parent $lock_class object $and_lock_class var $root owners [$and_lock_class] var $root owned [$and_lock_class] var $root manager $and_lock_class var $root writable [$and_lock_class] var $root readable ['parameters, 'methods, 'code] var $root dbref 'and_lock_class method new arg lhs, rhs; if ((type(lhs) != 'frob) || (type(rhs) != 'frob)) throw(~perm, "Arguments are not both frobs."); return <this(), [lhs, rhs]>; . method try arg lock, obj; return ((lock[1]).try(obj)) && ((lock[2]).try(obj)); .