﻿<?xml version="1.0"?>

<!DOCTYPE MOO [
 
<!ELEMENT MOO (OBJECT*)>
<!ELEMENT OBJECT (NAME, PROPERTY*, VERB*, OBJECT*)>
<!ELEMENT VERB (NAME, CODE)>
<!ELEMENT PROPERTY (NAME, VALUE?)>
<!ELEMENT CODE (#PCDATA)>
<!ELEMENT VALUE (#PCDATA)>
<!ELEMENT NAME (#PCDATA)>

<!ATTLIST OBJECT
  ID ID #REQUIRED
  FLAGS NMTOKENS #IMPLIED
  OWNER CDATA #REQUIRED
  LOCATION CDATA #REQUIRED
>
<!ATTLIST VERB
  OWNER CDATA #REQUIRED
  PERMS NMTOKENS #IMPLIED
  DOBJ CDATA #REQUIRED
  IOBJ CDATA #REQUIRED
  PREP CDATA #REQUIRED
>
<!ATTLIST PROPERTY
  OWNER CDATA #REQUIRED
  PERMS NMTOKENS #IMPLIED
>

]>
<!-- ** LambdaMOO Database, Format Version 4 ** -->
<MOO>
  <OBJECT ID="obj1" FLAGS="f r" OWNER="obj10" LOCATION="obj-1">
    <NAME>Root Class</NAME>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>description</NAME>
      <VALUE>{"This object is blank."}</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>aliases</NAME>
      <VALUE>{}</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>home</NAME>
      <VALUE>#-1</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>short_desc</NAME>
      <VALUE>""</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>core</NAME>
      <VALUE>1</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>handedness</NAME>
      <VALUE>0</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>base_enc</NAME>
      <VALUE>0</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>base_weight</NAME>
      <VALUE>0</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>capacity</NAME>
      <VALUE>0</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>max_fit</NAME>
      <VALUE>0</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>pprep</NAME>
      <VALUE>""</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>gprep</NAME>
      <VALUE>""</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>generic_name</NAME>
      <VALUE>""</VALUE>
    </PROPERTY>
    <PROPERTY OWNER="obj10" PERMS="w r">
      <NAME>age</NAME>
      <VALUE>0</VALUE>
    </PROPERTY>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>tree</NAME>
      <CODE>
        " #1:tree(INT, INT) this none this";
        "";
        " args[1]:  INT, recursion level ";
        " args[2]:  INT (Boolean), whether or not the 'all' option was used. ";
        "";
        " Returns:  0 ";
        " Modifies:  none ";
        " Owner:  $dm ";
        " Writer:  Ixion(#5) ";
        " Perms:  owner ";
        " Called-by:  #10($dm):tree command-line function ";
        " Screen Outputs:  sends the tree strings to the player ";
        "";
        " Description:  This verb outputs a nice object hierarchy tree for ";
        "               all fertile objects.  Its so simple and elegant;  but ";
        "               then again that is what recursion is about! ";
        "";
        "               Takes as arguments the recursion level which it is at ";
        "               just for formatting purposes, as well as true/false 'all' ";
        "               which, if true, causes the verb to print _all_ children, ";
        "               even those that aren't fertile.  In reality this would mean ";
        "               _every_ object downstream from the object that the verb was ";
        "               called on:  if on #1, then every object in the db. ";
        "";
        " NOTE:  Use with caution!  This function is capable of printing EVERY object ";
        "        in the entire database. ";
        "";
        depth = length(args) ? args[1] | 1;
        all = (length(args) == 2) ? args[2] | 0;
        player:tell(("~" + tostr(depth)) + "-");
        for x in [1..depth]
        player:tell("~  ");
        endfor
        player:tell((tostr(this) + " -- ") + this.name);
        newdepth = depth + 1;
        for y in (children(this))
        if ((y.f == 1) || (all == 1))
        y:tree(newdepth, all);
        endif
        endfor
        return;
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>recycle</NAME>
      <CODE>
        " #1:recycle this none this takes no arguments;  this function will change the parent of the object";
        " to #22 -- reusable class and wipe any props, change the name, and fertility stuff.";
        " we don't want to use builtin recycle, because we want a method for recovering object numbers.";
        " after an object is recycled, it will be named to reusable object and put in #-1.  fertile objects ";
        " can not be recycled; wizards cannot be recycled. Recycler, #1 and #0 cannot be recycled.  we will allow ";
        " for a list of non-recyclable objects to be maintained, perhaps on #24 -- recycler. ";
        " player bit should be revoked, prog bit should be revoked.  all verbs on it should be wiped. ";
        for task in ($recycler.recycle_tasks)
        if (task[1] == this)
        player:tell(this.name + " is already queued for recycling.");
        return 0;
        endif
        endfor
        if (((((((this == #1) || (this == #0)) || (this == #24)) || (this.wizard == 1)) || (this.f == 1)) || is_player(this)) || (this in $recycler.non_recyclable))
        player:tell(("You can't recycle " + this.name) + ".");
        return 0;
        else
        if (this:is_a($reusable))
        player:tell("That item is already recyclable material!");
        return;
        elseif (this:is_a($game_object))
        fork get_task_id ($recycler.recycle_time_limit)
        "if it is on a player, remove from held and worn.";
        if ((this.location != #-1) &amp;&amp; is_player(this.location))
        this.location.wielded = setremove(this.location.wielded, this);
        this.location.worn = setremove(this.location.worn, this);
        endif
        "if it is an exit, remove it from the appropriate room.exits props";
        if (this:is_a($exit))
        if ((this.source != #-1) &amp;&amp; this.source:is_a($room))
        #5:tell(((("removing " + tostr(this)) + " from ") + tostr(this.source)) + " exits.");
        this.source.exits = setremove(this.source.exits, this);
        endif
        endif
        this:move_to(#5);
        "if has kids, chparent on kids to this.parent";
        if (kids = children(this))
        for kid in (kids)
        chparent(kid, parent(this));
        endfor
        endif
        "if has contents, move any that are player to the start room";
        "else move to anonymous";
        if (conts = this.contents)
        for content in (conts)
        if (is_player(content))
        move(content, content.start_location);
        else
        move(content, $anonymous);
        endif
        endfor
        endif
        "if owns any objs, chown to anonymous";
        if (this:is_a($architect))
        for owned in (this.owned_objects)
        result = owned:chown($anonymous);
        endfor
        endif
        "chparent to #22";
        chparent(this, $reusable);
        "set all bits to 0";
        this.programmer = 0;
        this.wizard = 0;
        this.r = 0;
        this.w = 0;
        this.f = 0;
        "clear any verbs";
        for verby in (verbs(this))
        delete_verb(this, verby);
        endfor
        "clear any props";
        for propy in (properties(this))
        delete_property(this, propy);
        endfor
        "rename to Reusable Object";
        this.name = "Reusable Object " + tostr(this);
        this.aliases = {};
        "remove task from recyclers task list";
        for task_item in ($recycler.recycle_tasks)
        if (task_item[1] == this)
        $recycler.recycle_tasks = setremove($recycler.recycle_tasks, task_item);
        endif
        endfor
        player:tell(("Object " + tostr(this)) + " has been recycled.");
        endfork
        $recycler.recycle_tasks = {@$recycler.recycle_tasks, {this, get_task_id}};
        player:tell(((((this.name + " has been queued for recycling in ") + tostr($recycler.recycle_time_limit / 60)) + " minutes with task id ") + tostr(get_task_id)) + ".");
        player:tell("Kill this task id, or use the recycle command to stop this object from being destroyed.");
        else
        player:tell("We do not currently support recycling of this object type.");
        endif
        endif
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>chown</NAME>
      <CODE>
        " ok, we will call this instead of the builtin chown, so that we may add objs to our";
        " owned_objects prop.";
        " takes as an argument its new owner.  returns 0 on failure, new parent on success.";
        " will change ownership and ";
        " modify neccessary owned_objects props.";
        if (length(args) != 1)
        return 0;
        elseif (!valid(args[1]))
        return 0;
        else
        new_owner = args[1];
        old_owner = this.owner;
        this.owner = new_owner;
        if (old_owner:has_prop("owned_objects"))
        old_owner.owned_objects = setremove(old_owner.owned_objects, this);
        endif
        if (new_owner:has_prop("owned_objects"))
        new_owner.owned_objects = setadd(new_owner.owned_objects, this);
        endif
        return new_owner;
        endif
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>_create</NAME>
      <CODE>
        " #1:create this none this -- #1:create(obj owner) ";
        " returns the object number of the new object owned by owner ";
        {owner} = args;
        if (!valid(owner))
        return 0;
        endif
        new_owner = owner;
        " check for existing reusable objects ";
        kids = children($reusable);
        if (kids != {})
        new_object_num = kids[1];
        chparent(new_object_num, this);
        else
        " assign new obj num, create new obj, owned by $dm ";
        new_object_num = create(this, $dm);
        endif
        " change owner to new owner ";
        "player:tell(new_object_num)";
        testown = new_object_num:chown(new_owner);
        " make sure call to chown did not fail ";
        if (testown != new_owner)
        $log:add_entry("system", "[ERROR]", (((("Call to " + this.name) + ":chown() failed in call to ") + this.name) + ":create().") + "Check your verb logic, its fucked up.");
        endif
        new_object_num.name = "Child of " + this.name;
        return new_object_num;
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>move_to</NAME>
      <CODE>
        "#1:move_to(OBJ) this none this ";
        what = this;
        destination = args[1];
        old_loc = this.location;
        if (destination:is_a($animate))
        retval = destination:can_hold(what);
        if (retval[1] == 0)
        return {0, "You cannot hold any more items."};
        "if you are not already carrying the weight and encumbrance check for it";
        elseif (!what:contained_by(destination))
        "check encumbrance";
        if ((destination:encumbrance() + what:encumbrance()) &gt; destination.capacity)
        return {0, "That item is too bulky for you to carry."};
        "check weight limit";
        elseif ((what:weight() + destination:carried_weight()) &gt; (($str_weight_table[destination:str()] * 150) / 100))
        return {0, "That item is too heavy for you to carry."};
        endif
        endif
        elseif (destination:is_a($container))
        "check encumbrance";
        if ((destination:encumbrance() + what:encumbrance()) &gt; destination.capacity)
        return {0, "There is not enough room left to fit that item."};
        "check max_fit size limit";
        elseif (what:encumbrance() &gt; destination.max_fit)
        return {0, "That item is too large to fit."};
        endif
        endif
        try
        move(what, destination);
        if (valid(old_loc))
        if (old_loc:has_property("held"))
        old_loc.held = setremove(old_loc.held, this);
        endif
        endif
        if (destination:has_property("held"))
        destination.held = {@destination.held, this};
        endif
        return {1, ""};
        except (ANY)
        return {0, "That item won't go! (builtin move threw error)"};
        endtry
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>contained_by</NAME>
      <CODE>
        "root class:contained_by() this none this";
        "is OBJ contained by this? (recursive)";
        targ = args[1];
        if (this in targ.contents)
        return 1;
        elseif (targ.contents == {})
        return 0;
        else
        for each in (targ.contents)
        if (this:contained_by(each))
        return 1;
        endif
        endfor
        return 0;
        endif
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>descendants</NAME>
      <CODE>
        "#1:descendants() this none this";
        target = this;
        r = children(target);
        i = 1;
        while (i &lt;= length(r))
        if (kids = children(r[i]))
        r = {@r, @kids};
        endif
        i = i + 1;
        endwhile
        return r;
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>is_a</NAME>
      <CODE>
        {targ} = args;
        what = this;
        while (valid(what))
        if (what == targ)
        return 1;
        endif
        what = parent(what);
        endwhile
        return 0;
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>ancestors</NAME>
      <CODE>
        what = this;
        ancestors = {};
        while (valid(parent(what)))
        ancestors = {@ancestors, parent(what)};
        what = parent(what);
        endwhile
        return ancestors;
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>properties</NAME>
      <CODE>
        what = this;
        props = properties(what);
        while (valid(parent(what)))
        props = {@props, @properties(parent(what))};
        what = parent(what);
        endwhile
        return props;
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>has_prop*erty</NAME>
      <CODE>
        {prop} = args;
        try
        this.(prop);
        return 1;
        except (E_PROPNF, E_INVIND)
        return 0;
        endtry
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>has_verb</NAME>
      <CODE>
        ":has_verb(STR verbname)";
        "Find out if an object has a verb matching the given verbname.";
        "Returns {location} if so, 0 if not, where location is the object or the ancestor on which the verb is actually defined.";
        {verbname} = args;
        object = this;
        while (E_VERBNF == (vi = `verb_info(object, verbname) ! E_VERBNF, E_INVARG'))
        object = parent(object);
        endwhile
        return vi ? object | 0;
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>describe_to</NAME>
      <CODE>
        "#1:describe_to(target) this none this";
        "returns 0 if target isn't a valid animate objidnum";
        "second arg: 0 is for one line desc, e.g. a room look. 1 is for multiline desc, e.g.";
        "look at this, 2 is for very detailed desc, including contents.";
        {target, ?msglen = 0} = args;
        if (!target:is_a($animate))
        return 0;
        else
        shownum = "";
        if (target:is_a($architect))
        shownum = (" (" + tostr(this)) + ")";
        endif
        sees_str = this.short_desc ? (this.short_desc + shownum) + " is lying here." | ((this.name + shownum) + " is lying here.");
        if (msglen == 0)
        target:sees(3, {sees_str});
        elseif (msglen == 1)
        target:sees(3, {sees_str});
        target:sees(3, {this.description});
        elseif (msglen == 2)
        target:sees(3, {sees_str});
        target:sees(3, {this.description});
        target:sees(3, {"%WInside, you see:%w"});
        if (this.contents != {})
        for item in (this.contents)
        item:describe_to(target, 0);
        endfor
        endif
        endif
        endif
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>encumbrance</NAME>
      <CODE>
        "root class:encumbrance()";
        if (this.contents == {})
        return this.base_enc;
        else
        enc = 0;
        for each in (this.contents)
        enc = enc + each:encumbrance();
        endfor
        return enc + this.base_enc;
        endif
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>weight</NAME>
      <CODE>
        "root class:weight()";
        if (this.contents == {})
        return this.base_weight;
        else
        weight = 0;
        for each in (this.contents)
        weight = weight + each:weight();
        endfor
        return weight + this.base_weight;
        endif
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>tell</NAME>
      <CODE>
        return;
      </CODE>
    </VERB>
    <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
      <NAME>known_to</NAME>
      <CODE>
        "$root:known_to this none this";
        return {1, this.name};
      </CODE>
    </VERB>
    <OBJECT ID="obj0" FLAGS="r" OWNER="obj10" LOCATION="obj-1">
      <NAME>System Object</NAME>
      <PROPERTY OWNER="obj10" >
        <NAME>esc</NAME>
        <VALUE>"ESC"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>room</NAME>
        <VALUE>#2</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>utils</NAME>
        <VALUE>#20</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>recycler</NAME>
        <VALUE>#24</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>anonymous</NAME>
        <VALUE>#25</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>architect</NAME>
        <VALUE>#8</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>player</NAME>
        <VALUE>#6</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>coder</NAME>
        <VALUE>#9</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>dm</NAME>
        <VALUE>#10</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>exit</NAME>
        <VALUE>#13</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>door</NAME>
        <VALUE>#16</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>window</NAME>
        <VALUE>#17</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>reusable</NAME>
        <VALUE>#22</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>game_object</NAME>
        <VALUE>#11</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>nothing</NAME>
        <VALUE>#-1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>failed_match</NAME>
        <VALUE>#-3</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>ambiguous_match</NAME>
        <VALUE>#-2</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>animate</NAME>
        <VALUE>#3</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>black</NAME>
        <VALUE>"[0;30m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>red</NAME>
        <VALUE>"[0;31m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>green</NAME>
        <VALUE>"[0;32m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>yellow</NAME>
        <VALUE>"[0;33m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>blue</NAME>
        <VALUE>"[0;34m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>magenta</NAME>
        <VALUE>"[0;35m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>cyan</NAME>
        <VALUE>"[0;36m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>white</NAME>
        <VALUE>"[0;37m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>bblack</NAME>
        <VALUE>"[1;30m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>bred</NAME>
        <VALUE>"[1;31m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>bgreen</NAME>
        <VALUE>"[1;32m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>byellow</NAME>
        <VALUE>"[1;33m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>bblue</NAME>
        <VALUE>"[1;34m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>bmegenta</NAME>
        <VALUE>0</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>bcyan</NAME>
        <VALUE>"[1;36m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>bwhite</NAME>
        <VALUE>"[1;37m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>bmagenta</NAME>
        <VALUE>"[1;35m"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>color_codes</NAME>
        <VALUE>{"%K", "%r", "%g", "%y", "%b", "%m", "%c", "%w", "%K", "%R", "%G", "%Y", "%B", "%M", "%C", "%W"}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>raw_colors</NAME>
        <VALUE>{""}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>server_options</NAME>
        <VALUE>#0</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>fg_ticks</NAME>
        <VALUE>100000</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>fg_seconds</NAME>
        <VALUE>5</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>admins</NAME>
        <VALUE>{#4, #5, #51}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>banner</NAME>
        <VALUE>{"OpenBSD 2.8 (GENERIC) #399: Mon Nov  6 10:59:23 MST 2000"}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>log</NAME>
        <VALUE>#43</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>last_help_topic</NAME>
        <VALUE>100</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_msg_box_size</NAME>
        <VALUE>3000</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_msg_length</NAME>
        <VALUE>350</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>languages</NAME>
        <VALUE>{#63, #75}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>default_language</NAME>
        <VALUE>#63</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>editor</NAME>
        <VALUE>#58</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>next_help_id</NAME>
        <VALUE>"A10188"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>start_time</NAME>
        <VALUE>1030237770</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_connected</NAME>
        <VALUE>{1, 1030237775}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>banner_small</NAME>
        <VALUE>"                  %r---===&gt;&gt;&gt;%R&gt;&gt;&gt;%B&gt;&gt;&gt;  Murpg Core  &lt;&lt;&lt;%R&lt;&lt;&lt;%r&lt;&lt;&lt;===---%w"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>connect_timeout</NAME>
        <VALUE>30</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>container</NAME>
        <VALUE>#19</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>wearable</NAME>
        <VALUE>#41</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>male</NAME>
        <VALUE>{"man", "he", "him", "his", "his", "himself"}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>female</NAME>
        <VALUE>{"woman", "she", "her", "hers", "her", "herself"}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>neither</NAME>
        <VALUE>{"neuter", "it", "it", "its", "its", "itself"}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>str_weight_table</NAME>
        <VALUE>{20, 25, 30, 35, 40, 50, 60, 70, 80, 90, 100, 110, 120, 140, 170, 200, 300, 400, 500, 600}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>channels</NAME>
        <VALUE>#68</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>bad_command</NAME>
        <VALUE>"I couldn't understand that."</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>safety_lock</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>dex_ac_table</NAME>
        <VALUE>{5, 4, 3, 2, 2, 1, 1, 1, 0, 0, 0, 0, -1, -1, -1, -2, -2, -3, -4, -5}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>who</NAME>
        <VALUE>#64</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>both</NAME>
        <VALUE>{"gynander", "et", "et", "ets", "ets", "etself"}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>combat</NAME>
        <VALUE>#42</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>dex_thac0_table</NAME>
        <VALUE>{-3, -2, -2, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 3}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>str_dam_table</NAME>
        <VALUE>{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 3, 4, 5}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>spd_att_table</NAME>
        <VALUE>{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 4}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>dex_init_table</NAME>
        <VALUE>{3, 3, 3, 2, 2, 1, 1, 1, 0, 0, 0, 0, -1, -1, -1, -2, -2, -3, -3, -3}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>spd_init_table</NAME>
        <VALUE>{3, 3, 3, 2, 2, 1, 1, 1, 0, 0, 0, 0, -1, -1, -1, -2, -2, -3, -3, -3}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>bg_ticks</NAME>
        <VALUE>50000</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>str_end_table</NAME>
        <VALUE>{-50, -40, -30, -20, -10, -5, 0, 0, 0, 0, 0, 0, 0, 0, 5, 10, 20, 30, 40, 50}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>con_end_table</NAME>
        <VALUE>{-50, -40, -30, -20, -10, -5, 0, 0, 0, 0, 0, 0, 0, 0, 5, 10, 20, 30, 40, 50}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>con_hp_regen_table</NAME>
        <VALUE>{-3, -2, -2, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 3}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>ticker</NAME>
        <VALUE>#52</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>spell</NAME>
        <VALUE>#49</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>weapon</NAME>
        <VALUE>#76</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>shield</NAME>
        <VALUE>#77</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>shutdown_pid</NAME>
        <VALUE>0</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>language</NAME>
        <VALUE>#96</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>default_prompt</NAME>
        <VALUE>"%B[%dhp%hp%B/%c%HP%B][%df%f%B/%c%F%B][%de%e%B/%c%E%B]%w "</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>banner_old</NAME>
        <VALUE>{"          __  ___                          ______               ", "         /  |/  /_  ___________  ____ _   / ____/___  ________  ", "        / /|_/ / / / / ___/ __ \\/ __ `/  / /   / __ \\/ ___/ _ \\ ", "       / /  / / /_/ / /  / /_/ / /_/ /  / /___/ /_/ / /  /  __/ ", "      /_/  /_/\\__,_/_/  / .___/\\__, /   \\____/\\____/_/   \\___/  ", "                       /_/    /____/                            ", "", "     --------========[ Compatible with All Future Technologies", "", "", "", "", ""}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>player_species</NAME>
        <VALUE>{#67, #84, #89}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>genders</NAME>
        <VALUE>{"female", "male", "both", "neither"}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>exit_size_enc</NAME>
        <VALUE>{30, 50, 60, 80, 100, 150, 200, 250, 500}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>letters</NAME>
        <VALUE>"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>key</NAME>
        <VALUE>#72</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
      <VERB OWNER="obj10" PERMS="d x r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>do_login_command</NAME>
        <CODE>
          "#0.do_login_command([str name [str passwd]]);";
          "called with no args when connection first comes in,";
          "and then whenever someone types a command after getting";
          "connected.  if name and password both typed (two tokens)";
          "then will try to connect as player args1 with passwd args2";
          "if only name is specified, then will prompt for passwd, and";
          "do a force_input() with both name and passwd.  this is because";
          "server doesn't allow the do_login_command to suspend, and a call";
          "to read() forces a suspend().";
          {?name = "", ?typedpass = ""} = args;
          valid = 0;
          auth = 0;
          is_connected = 0;
          pc = 0;
          if (argstr == "")
          for each in ($banner)
          notify(player, each);
          endfor
          notify(player, "~Type your name to log in: ");
          return 0;
          elseif ((name != "") &amp;&amp; (typedpass == ""))
          notify(player, "~Password: ");
          typedpass = read(player, 0);
          if (typedpass == "")
          typedpass = "crap";
          endif
          force_input(player, (name + " ") + typedpass, 1);
          elseif ((name != "") &amp;&amp; (typedpass != ""))
          "exact match, name only";
          matchlist = $utils:match(name, players(), 1, 1);
          valid = length(matchlist) == 1;
          if (valid)
          {pc} = matchlist;
          auth = crypt(typedpass, pc.password[1..2]) == pc.password;
          is_connected = pc in connected_players();
          endif
          if ((auth &amp;&amp; (!is_connected)) &amp;&amp; valid)
          return pc;
          else
          notify(player, "Either that player does not exist, is currently logged in, or the password you typed is incorrect.");
          $log:add_entry("login", $log.log_levels[2], (("Failed login on " + connection_name(player)) + "  ") + name);
          notify(player, "");
          force_input(player, "");
          return 0;
          endif
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>do_prompt_task</NAME>
        <CODE>
          "#0:do_prompt_task";
          targ = args[1];
          prompt_str = targ.prompt_string;
          maxhp = targ:max_hp();
          curhp = targ.cur_hp;
          maxf = targ:max_focus();
          curf = targ.cur_focus;
          maxe = targ:max_endurance();
          cure = targ.cur_endurance;
          hpdam = (curhp * 100) / maxhp;
          fdam = (curf * 100) / maxf;
          edam = (cure * 100) / maxe;
          if (curhp == maxhp)
          hpcol = targ.prompt_colors[1];
          elseif (hpdam &gt;= 75)
          hpcol = targ.prompt_colors[2];
          elseif (hpdam &gt;= 50)
          hpcol = targ.prompt_colors[3];
          elseif (hpdam &gt;= 25)
          hpcol = targ.prompt_colors[4];
          else
          hpcol = targ.prompt_colors[5];
          endif
          if (curf == maxf)
          fcol = targ.prompt_colors[6];
          elseif (fdam &gt;= 75)
          fcol = targ.prompt_colors[7];
          elseif (fdam &gt;= 50)
          fcol = targ.prompt_colors[8];
          elseif (fdam &gt;= 25)
          fcol = targ.prompt_colors[9];
          else
          fcol = targ.prompt_colors[10];
          endif
          if (cure == maxe)
          ecol = targ.prompt_colors[11];
          elseif (edam &gt;= 75)
          ecol = targ.prompt_colors[12];
          elseif (edam &gt;= 50)
          ecol = targ.prompt_colors[13];
          elseif (edam &gt;= 25)
          ecol = targ.prompt_colors[14];
          else
          ecol = targ.prompt_colors[15];
          endif
          codes = {"%n", "%hp", "%HP", "%f", "%F", "%e", "%E", "%dhp", "%df", "%de"};
          values = {targ.name, tostr(curhp), tostr(maxhp), tostr(curf), tostr(maxf), tostr(cure), tostr(maxe), hpcol, fcol, ecol};
          for x in [1..length(codes)]
          new = strsub(prompt_str, codes[x], values[x], 1);
          prompt_str = new;
          endfor
          if (targ.afk)
          prompt_str = "%B[%cAFK%B]%w" + prompt_str;
          endif
          targ:tell("");
          targ:tell(("~" + "%w") + prompt_str);
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>user_connected</NAME>
        <CODE>
          "#0:user_connected this none this";
          " called with args[1]=player that just connected by do_login_command ";
          "  upon a valid player connecting to moo. ";
          " we need it to set up the player's prompt connection option. ";
          {player} = args;
          $log:add_entry("connection", "[INFO]", ((((player.name + " (") + tostr(player)) + ") has connected (") + connection_name(player)) + ").");
          "set $max_connected if applicable";
          curlen = length(connected_players());
          if (curlen &gt;= $max_connected[1])
          $max_connected = {curlen, time()};
          endif
          if (player.prompt_on == 1)
          set_connection_option(player, "prompt", 1);
          endif
          player:tell("");
          player:tell($welcome_msg());
          player:tell("");
          force_input(player, "look");
          if (player.messages != {})
          player:tell("%YYou have messages.  Type 'msg view' to see them.%w");
          endif
          player:tell();
          return 0;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>welcome_msg</NAME>
        <CODE>
          "called by user_connected";
          return "%WWelcome to Murpg Core! Enjoy your stay, and write some damn code...%w";
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>checkpoint_started</NAME>
        <CODE>
          "$checkpoint_started() this none this";
          $log:add_entry("system", "[INFO]", "Checkpoint started.");
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>checkpoint_finished</NAME>
        <CODE>
          "$checkpoint_finished() this none this";
          {success} = args;
          if (success)
          $log:add_entry("system", "[INFO]", "Checkpoint finished (success).");
          else
          $log:add_entry("system", "[ERROR]", "Checkpoint finished (failure).");
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>user_reconnected</NAME>
        <CODE>
          {player} = args;
          $log:add_entry("connection", "[WARNING]", ((((player.name + " (") + tostr(player)) + ") has redirected connection (") + connection_name(player)) + ").");
          if (player.prompt_on == 1)
          set_connection_option(player, "prompt", 1);
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>user_disconnected</NAME>
        <CODE>
          if (!valid(player))
          $log:add_entry("login", "[INFO]", ((connection_name(player) + " (") + tostr(player)) + ") has timed out.");
          else
          player:set_disconnect_info();
          $log:add_entry("connection", "[INFO]", ((player.name + " (") + tostr(player)) + ") has disconnected.");
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>user_client_disconnected</NAME>
        <CODE>
          player:set_disconnect_info();
          $log:add_entry("connection", "[INFO]", ((player.name + " (") + tostr(player)) + ") has (client) disconnected.");
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>shutdown</NAME>
        <CODE>
          "$shutdown this none this";
          {when, why} = args;
          if (when == 0)
          $log:add_entry("system", "[WARNING]", (player.name + " has initiated immediate server shutdown: ") + why);
          "shutdown(why)";
          #5:tell("server shutdown");
          #4:tell("server shutdown");
          else
          fork pid (when)
          $log:add_entry("system", "[INFO]", ((((((player.name + " has initiated server shutdown [") + tostr(when)) + "]: ") + why) + " [PID = ") + tostr(pid)) + "]");
          $shutdown_pid = 0;
          "shutdown(why)";
          #5:tell("server shutdown");
          #4:tell("server shutdown");
          endfork
          $shutdown_pid = pid;
          "{days, hours, minutes, seconds} = $utils:dhms(when)";
          for each in (connected_players())
          each:tell(((((("%W" + player.name) + " has initiated server shutdown.%w  The server will be shutdown in ") + tostr(when)) + " seconds.  %Y") + why) + "%w");
          endfor
          $log:add_entry("system", "[INFO]", (((("Server will be shutdown in " + tostr(when)) + " seconds.  [PID = ") + tostr(pid)) + "]  ") + why);
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>server_started</NAME>
        <CODE>
          "#0:server_started this none this";
          $log:add_entry("system", "[INFO]", "Server has started.");
          $start_time = time();
          $max_connected = {0, 0};
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>get_next_help_id</NAME>
        <CODE>
          "$get_next_help_id this none this";
          "returns the next available article num for help db topics.";
          current_id = tonum($next_help_id[2..$]);
          next_id = current_id + 1;
          $next_help_id = "A" + tostr(next_id);
          return "A" + tostr(current_id);
        </CODE>
      </VERB>
    </OBJECT>
    <OBJECT ID="obj11" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
      <NAME>Game Class</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
      <OBJECT ID="obj2" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
        <NAME>Room Class</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>how_full</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>exits</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>entrances</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>colors</NAME>
          <VALUE>{"%W", "%g", "%G", "%C", "%W"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>combatants</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>combat_pid</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>endurance_cost</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"This is the beginning of something very special..."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>will_accept</NAME>
          <CODE>
            room = this;
            what = args[1];
            do_check = 0;
            " Make sure the recursive location can be referenced (i.e., the object is not ";
            " in #-1). ";
            rec_loc_ok = what.location:has_prop("location");
            "";
            " Just double-checking... ";
            if (what.location == room)
            return 1;
            else
            if (rec_loc_ok)
            if (what.location.location != room)
            " The container holding the target object is NOT in the room. ";
            do_check = 1;
            else
            return 1;
            endif
            else
            " The container holding the target is in #-1. ";
            do_check = 1;
            endif
            endif
            if (do_check)
            combined = room.how_full + what.encumbrance;
            if (combined &gt; room.capacity)
            " The added encumbrance of the target object will exceed ";
            " the room's capacity. ";
            return 0;
            else
            " Ok, the encumbrance check has passed. ";
            return 1;
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>match_exit</NAME>
          <CODE>
            " #2:match_exit( string ) [ this none this ] ";
            "";
            " string:  a name of an exit typed on the command line ";
            "";
            " Returns:  OBJ ";
            " OBJ: object number of the exit matched or error ";
            "";
            " Modifies:  none ";
            " Owner:  $dm ";
            " Writer:  ixion(#5) from LambdaMOO core";
            " Perms:  don't know ";
            " Called by:  $player:north south east west ";
            " Screen Outputs:  none ";
            "";
            " Description:  &lt;Description&gt; ";
            "               [..more..] ";
            "";
            " NOTE:  &lt;any specific notes or warnings&gt; ";
            " Examples:  &lt;EXAMPLE1&gt; ";
            "            &lt;EXAMPLE2&gt; ";
            "";
            " Error Codes:  ";
            syntax = "SYNTAX:  &lt;verb_name&gt; &lt;proper_args&gt; [optional_syntax]";
            example = "For example:  &lt;verb_name&gt; &lt;example_syntax&gt;";
            alternate_example = "For example:  &lt;verb_name&gt; &lt;alternate_syntax&gt;";
            what = args[1];
            if (what)
            ERR = $failed_match;
            for e in (this.exits)
            if (valid(e) &amp;&amp; (what in {e.name, @e.aliases}))
            if (ERR == $failed_match)
            ERR = e;
            elseif (ERR != e)
            return $ambiguous_match;
            endif
            endif
            endfor
            return ERR;
            else
            return $nothing;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>enterfunc</NAME>
          <CODE>
            "$room:enterfunc this none this";
            "Display room description and contents.";
            who = args[1];
            if (who:is_a($animate))
            this:describe_to(who);
            who:lower_endurance(this.endurance_cost);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>display_contents</NAME>
          <CODE>
            nonanimate = {};
            outstr = "You see ";
            for xobj in (this.contents)
            if (xobj:is_a($animate))
            player:tell(xobj.name);
            else
            nonanimate = {@nonanimate, xobj};
            endif
            endfor
            if (nonanimate)
            outstr = outstr + nonanimate[1].name;
            if (length(nonanimate) &gt; 1)
            for xobj in (nonanimate[2..length(nonanimate)])
            outstr = (outstr + ", ") + xobj.name;
            endfor
            endif
            player:tell(outstr + ".");
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>display_exits</NAME>
          <CODE>
            " &lt;obj_num&gt;:&lt;verb_name&gt;(&lt;TYPE&gt;, &lt;TYPE&gt;, ...) [&lt;DOBJ&gt; &lt;PREP&gt; &lt;IOBJ&gt;] ";
            "";
            " &lt;ARGS1&gt;:  &lt;Description&gt; ";
            " &lt;ARGS2&gt;:  &lt;Description&gt; ";
            " &lt;...&gt; ";
            "";
            " Returns:  [{]&lt;TYPE&gt;, &lt;TYPE&gt;, ...[}] ";
            " &lt;RETTYPE1&gt;:  &lt;Description&gt; ";
            " &lt;RETTYPE2&gt;:  &lt;Description&gt; ";
            "";
            " Modifies:  &lt;OBJ&gt;.&lt;prop&gt;, &lt;OBJ&gt;.&lt;prop&gt;, ... ";
            " Owner:  &lt;OBJ&gt; ";
            " Writer:  &lt;name&gt;(OBJ#) [source (i.e., LambdaMOO core?)]";
            " Perms:  &lt;OWNER&gt; | &lt;CALLER&gt; | &lt;PLAYER&gt; ";
            " Called by:  &lt;OBJ&gt;:&lt;verb&gt;, &lt;OBJ&gt;:&lt;verb&gt;, [Description] ... ";
            " Screen Outputs:  &lt;Description&gt; ";
            "";
            " Description:  &lt;Description&gt; ";
            "               [..more..] ";
            "";
            " NOTE:  &lt;any specific notes or warnings&gt; ";
            "";
            " Error Codes:  ";
            for xit in (this.exits)
            player:tell(xit.direction, " ==&gt; ", xit.dest.name);
            endfor
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>describe_to</NAME>
          <CODE>
            "$room:describe_to(target) this none this";
            "returns 0 if target isn't a valid animate objidnum";
            {target} = args;
            if (!target:is_a($animate))
            return 0;
            else
            shownum = "";
            if (target:is_a($architect))
            shownum = (" (" + tostr(this)) + ")";
            endif
            colors = this.colors;
            target:sees(3, {(colors[1] + this.name) + shownum});
            for x in (this.description)
            target:sees(3, {colors[2] + x});
            endfor
            nonanimates = {};
            animates = {};
            for xobj in (this.contents)
            if (xobj:is_a($animate))
            animates = {@animates, xobj};
            else
            nonanimates = {@nonanimates, xobj};
            endif
            endfor
            if (nonanimates)
            target:tell("~" + colors[3]);
            for xobj in (nonanimates)
            xobj:describe_to(target);
            endfor
            endif
            animates = setremove(animates, target);
            if (animates)
            target:tell("~" + colors[4]);
            for xobj in (animates)
            xobj:describe_to(target);
            endfor
            endif
            "dont forget the exits!";
            player:tell("~" + colors[5]);
            for xit in (this.exits)
            target:sees(3, {(xit.direction + " ==&gt; ") + xit.dest.name});
            endfor
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>get_animates</NAME>
          <CODE>
            "$room:get_animates() this one this";
            "returns a list of animates that are in this room";
            animates = {};
            for each in (this.contents)
            if (each:is_a($animate))
            animates = {@animates, each};
            endif
            endfor
            return animates;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>exitfunc</NAME>
          <CODE>
            "$room:exitfunc this none this";
          </CODE>
        </VERB>
        <OBJECT ID="obj32" FLAGS="w r" OWNER="obj10" LOCATION="obj-1">
          <NAME>Finder's Test Room</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>how_full</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>exits</NAME>
            <VALUE>{#35}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>entrances</NAME>
            <VALUE>{#26, #94}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>colors</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combatants</NAME>
            <VALUE>{}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_pid</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>endurance_cost</NAME>
            <VALUE>5</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
            <VALUE>{"Rolling hills blanketed in snow, awash in moonlight."}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
        </OBJECT>
        <OBJECT ID="obj33" FLAGS="w r" OWNER="obj10" LOCATION="obj-1">
          <NAME>Ixion's Test Room</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>how_full</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>exits</NAME>
            <VALUE>{#26}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>entrances</NAME>
            <VALUE>#35</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>colors</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combatants</NAME>
            <VALUE>{}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_pid</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>endurance_cost</NAME>
            <VALUE>4</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
            <VALUE>{"Wooo.  A test room."}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
        </OBJECT>
        <OBJECT ID="obj58" FLAGS="w r" OWNER="obj10" LOCATION="obj-1">
          <NAME>Editing Room</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>how_full</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>exits</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>entrances</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>colors</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combatants</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_pid</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>endurance_cost</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
            <VALUE>{"Commands: say, delete, list, insert, exit."}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
            <NAME>exit</NAME>
            <CODE>
              "$editor:exit none none none";
              player:tell("You are now %Wleaving%w the Editor...");
              player.editing_prop = "";
              player.editing_obj = #-1;
              player:move_to(player.editing_loc);
              player.editing_loc = #-1;
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
            <NAME>list</NAME>
            <CODE>
              "$editor:list none none none";
              x = 1;
              player:tell(((("You are currently editing %W" + tostr(player.editing_obj)) + ".") + player.editing_prop) + "%w.");
              for each in (player.editing_obj.(player.editing_prop))
              player:tell((("%W" + tostr(x)) + ((x == player.insert_point) ? ":^^%w" | ":  %w")) + each);
              x = x + 1;
              endfor
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
            <NAME>del*ete</NAME>
            <CODE>
              "$editor:del*ete any none none";
              if (length(args) == 0)
              player:tell("%Gsyntax: %Wdelete linenum%w");
              else
              linenum = tonum(args[1]);
              if ((linenum == 0) || (linenum &gt; length(player.editing_obj.(player.editing_prop))))
              player:tell(("%W" + args[1]) + "%w is not a valid line number.");
              else
              player.editing_obj.(player.editing_prop) = listdelete(player.editing_obj.(player.editing_prop), linenum);
              player:tell(("Line %W" + tostr(linenum)) + "%w deleted.");
              endif
              endif
              article_length = length(player.editing_obj.(player.editing_prop));
              if (player.insert_point &gt; (article_length + 1))
              player.insert_point = article_length + 1;
              elseif (linenum &lt; player.insert_point)
              player.insert_point = player.insert_point - 1;
              endif
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
            <NAME>describe_to</NAME>
            <CODE>
              "$editor:describe_to this none this";
              "just like room, but tells you what you are editing";
              pass(@args);
              player:tell(((("You are currently editing %W" + tostr(player.editing_obj)) + ".") + player.editing_prop) + "%w.");
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
            <NAME>ins*ert</NAME>
            <CODE>
              "$editor:insert any none none";
              {?line = "none"} = args;
              article_length = length(player.editing_obj.(player.editing_prop));
              if (article_length == 0)
              player:tell("Property is blank.");
              player.insert_point = 1;
              elseif (line == "none")
              ip = player.insert_point;
              player:tell((("%W" + tostr(ip - 1)) + ":%w  ") + player.editing_obj.(player.editing_prop)[ip - 1]);
              if (ip &lt;= article_length)
              player:tell((("%W" + tostr(ip)) + ":%w^^") + player.editing_obj.(player.editing_prop)[ip]);
              endif
              if ((ip + 1) &lt;= article_length)
              player:tell((("%W" + tostr(ip + 1)) + ":%w  ") + player.editing_obj.(player.editing_prop)[ip + 1]);
              endif
              return;
              elseif (line == "$")
              player.insert_point = article_length + 1;
              elseif ((tonum(line) &lt; 1) || (tonum(line) &gt; (article_length + 1)))
              player:tell("Insertion point out of range.");
              else
              player.insert_point = tonum(line);
              endif
              player:tell(("Insertion point set to before line %W" + tostr(player.insert_point)) + "%w.");
            </CODE>
          </VERB>
        </OBJECT>
        <OBJECT ID="obj60" FLAGS="w r" OWNER="obj5" LOCATION="obj-1">
          <NAME>Character Creation</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>how_full</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>exits</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>entrances</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>colors</NAME>
            <VALUE>{"%W", "%w", "%G", "%C", "%W"}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combatants</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_pid</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>endurance_cost</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
            <VALUE>{"%W1.%w Set the following attributes by typing &lt;attribute&gt; &lt;value&gt;.", "%W2.%w You need to fill in at least name and full name.  Anything else that you", "   don't set will be automatically completed for you.", "%W3.%w The \"points left\" tells you how many points you have left to distribute", "   amongst your six ability scores.", "%W4.%w For Height, do not include the ' and \" (e.g. HEIGHT 5 11).", "%W5.%w Most things can be abbreviated with the first four characters (e.g. stre,", "   inte, dext, conc, full, lang).", "", "%WNote:%w Changing your species may alter your ability scores, height, and weight,", "      as different species have different minimum and maximum values."}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
            <VALUE>{}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
          <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
            <NAME>describe_to</NAME>
            <CODE>
              "Char Creation Room:describe_to this none this";
              "returns 0 if target isn't a valid animate objidnum";
              {target} = args;
              if (pass(@args))
              return 0;
              elseif (target.finished == 1)
              target:tell("Your character is already finished.  You can't do anything here.  Go away!");
              else
              target:tell("");
              "species";
              target:tell("~", $utils:padr("  Species:", 16), $utils:padr(target.species.generic_name, 20), "(");
              allowed_species = $player_species;
              target:tell("~", allowed_species[1].generic_name);
              for each in (allowed_species[2..$])
              target:tell("~, ", each.generic_name);
              endfor
              target:tell(")");
              "name";
              target:tell($utils:padr("  Name:", 16), $utils:padr(target.name, 20), "(20 chars, no spaces)");
              target:tell($utils:padr("  Full Name:", 16), $utils:padr(target.full_name, 20), "(20 chars, including spaces)");
              "gender";
              target:tell("~", $utils:padr("  Gender:", 16), $utils:padr(target.gender, 20), "(");
              allowed_genders = $genders;
              target:tell("~", allowed_genders[1]);
              for each in (allowed_genders[2..$])
              target:tell("~, ", each);
              endfor
              target:tell(")");
              "height";
              target:tell($utils:padr("  Height:", 16), $utils:padr(target:height_str(), 20), "(", $utils:height_str(target.species.min_height), " - ", $utils:height_str(target.species.max_height), ")");
              "weight";
              target:tell($utils:padr("  Weight:", 16), $utils:padr(tostr(target.base_weight) + " lbs.", 20), "(", target.species.min_weight, " - ", target.species.max_weight, " lbs.)");
              "languages";
              if (length(target.known_languages) == 0)
              lang_str = "";
              elseif (length(target.known_languages) == 1)
              lang_str = target.known_languages[1].name;
              else
              lang_str = target.known_languages[1].name;
              for each in (target.known_languages[2..$])
              lang_str = (lang_str + ", ") + each.name;
              endfor
              endif
              target:tell("~", $utils:padr("  Languages:", 16), $utils:padr(lang_str, 20), "(");
              allowed_langs = $languages;
              target:tell("~", allowed_langs[1].name);
              for each in (allowed_langs[2..$])
              target:tell("~, ", each.name);
              endfor
              target:tell(")");
              "ability scores";
              target:tell($utils:padr("  Strength:", 16), $utils:padr(tostr(target.base_str), 20), "(", target.species.min_str, " - ", target.species.max_str, ")");
              target:tell($utils:padr("  Intelligence:", 16), $utils:padr(tostr(target.base_int), 20), "(", target.species.min_int, " - ", target.species.max_int, ")");
              target:tell($utils:padr("  Dexterity:", 16), $utils:padr(tostr(target.base_dex), 20), "(", target.species.min_dex, " - ", target.species.max_dex, ")");
              target:tell($utils:padr("  Constitution:", 16), $utils:padr(tostr(target.base_con), 20), "(", target.species.min_con, " - ", target.species.max_con, ")");
              target:tell($utils:padr("  Concentration:", 16), $utils:padr(tostr(target.base_cnc), 20), "(", target.species.min_cnc, " - ", target.species.max_cnc, ")");
              target:tell($utils:padr("  Speed:", 16), $utils:padr(tostr(target.base_spd), 20), "(", target.species.min_spd, " - ", target.species.max_spd, ")");
              target:tell("");
              points_left = (target.total_points - target.base_str) - ((((target.base_int + target.base_dex) + target.base_spd) + target.base_con) + target.base_cnc);
              target:tell("You have ", points_left, " points left.  Type CREATE to create this character and start playing!");
              endif
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
            <NAME>spec*ies</NAME>
            <CODE>
              "char creation room : species any any any";
              "sets player's species, checks scores for min/max values";
              "assigns extra points for modifying primary attributes.";
              species = $utils:trimr(argstr);
              species_names = {};
              for each in ($player_species)
              species_names = {@species_names, each.generic_name};
              endfor
              if (species in species_names)
              player:tell("Good choice.");
              player.species = $player_species[species in species_names];
              player.total_points = 60 + random(player.species.bonus_points);
              "adjust ability scores";
              player.base_str = (player.base_str &gt; player.species.max_str) ? player.species.max_str | player.base_str;
              player.base_str = (player.base_str &lt; player.species.min_str) ? player.species.min_str | player.base_str;
              player.base_int = (player.base_int &gt; player.species.max_int) ? player.species.max_int | player.base_int;
              player.base_int = (player.base_int &lt; player.species.min_int) ? player.species.min_int | player.base_int;
              player.base_dex = (player.base_dex &gt; player.species.max_dex) ? player.species.max_dex | player.base_dex;
              player.base_dex = (player.base_dex &lt; player.species.min_dex) ? player.species.min_dex | player.base_dex;
              player.base_spd = (player.base_spd &gt; player.species.max_spd) ? player.species.max_spd | player.base_spd;
              player.base_spd = (player.base_spd &lt; player.species.min_spd) ? player.species.min_spd | player.base_spd;
              player.base_con = (player.base_con &gt; player.species.max_con) ? player.species.max_con | player.base_con;
              player.base_con = (player.base_con &lt; player.species.min_con) ? player.species.min_con | player.base_con;
              player.base_cnc = (player.base_cnc &gt; player.species.max_cnc) ? player.species.max_cnc | player.base_cnc;
              player.base_cnc = (player.base_cnc &lt; player.species.min_cnc) ? player.species.min_cnc | player.base_cnc;
              "if total of scores is greater than total points, then reduce everything to minimums.";
              total_scores = ((((player.base_str + player.base_int) + player.base_dex) + player.base_spd) + player.base_con) + player.base_cnc;
              if (total_scores &gt; player.total_points)
              player.base_str = player.species.min_str;
              player.base_int = player.species.min_int;
              player.base_dex = player.species.min_dex;
              player.base_spd = player.species.min_spd;
              player.base_cnc = player.species.min_cnc;
              player.base_con = player.species.min_con;
              endif
              "adjust height and weight";
              player.height = (player.height &gt; player.species.max_height) ? player.species.max_height | player.height;
              player.height = (player.height &lt; player.species.min_height) ? player.species.min_height | player.height;
              player.base_weight = (player.base_weight &gt; player.species.max_weight) ? player.species.max_weight | player.base_weight;
              player.base_weight = (player.base_weight &lt; player.species.min_weight) ? player.species.min_weight | player.base_weight;
              else
              if (species == "")
              player:tell("Please select a species from the following list:");
              else
              player:tell("That is not a valid species.  Please select from the following list:");
              endif
              for each in (species_names)
              player:tell("  " + each);
              endfor
              endif
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
            <NAME>full*name</NAME>
            <CODE>
              "Char creation : full*name any any any";
              "assigns name to player, letters only, no spaces.";
              fullnamestr = argstr;
              invalid = 0;
              for x in [1..length(fullnamestr)]
              if (!(index($letters, fullnamestr[x]) || (fullnamestr[x] == " ")))
              invalid = 1;
              endif
              endfor
              if (invalid || (length(fullnamestr) &gt; 20))
              player:tell("Your full name can only be 20 characters long, and must only contain letters and spaces.");
              else
              player.full_name = fullnamestr;
              player:tell("Your full name has been changed.");
              endif
            </CODE>
          </VERB>
        </OBJECT>
      </OBJECT>
      <OBJECT ID="obj3" FLAGS="f player" OWNER="obj10" LOCATION="obj61">
        <NAME>Animate Class</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>color</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_hear</NAME>
          <VALUE>3</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_see</NAME>
          <VALUE>3</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_smell</NAME>
          <VALUE>3</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>prompt_string</NAME>
          <VALUE>"%W&lt;Murpg&gt;%w "</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_hp</NAME>
          <VALUE>12</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>cur_hp</NAME>
          <VALUE>12</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>password</NAME>
          <VALUE>"RFMs4aT6VPx96"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>messages</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_feel</NAME>
          <VALUE>3</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_taste</NAME>
          <VALUE>3</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>known_languages</NAME>
          <VALUE>{#63}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>current_language</NAME>
          <VALUE>#63</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gender</NAME>
          <VALUE>"neither"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>afk</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_str</NAME>
          <VALUE>10</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_int</NAME>
          <VALUE>10</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_hea</NAME>
          <VALUE>10</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_spd</NAME>
          <VALUE>10</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_cnc</NAME>
          <VALUE>10</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>held</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>help_db</NAME>
          <VALUE>#54</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>wielded</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>worn</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>species</NAME>
          <VALUE>#67</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>height</NAME>
          <VALUE>68</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>current_channels</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>position</NAME>
          <VALUE>"standing"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>consciousness</NAME>
          <VALUE>"awake"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_ac</NAME>
          <VALUE>10</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>skills</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_dex</NAME>
          <VALUE>10</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_con</NAME>
          <VALUE>10</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>combat_stance</NAME>
          <VALUE>"attack"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>known_players</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>targets</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>last_connected</NAME>
          <VALUE>"never"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>combat_init</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>combat_weapon</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_endurance</NAME>
          <VALUE>100</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>cur_endurance</NAME>
          <VALUE>95</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_focus</NAME>
          <VALUE>100</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>cur_focus</NAME>
          <VALUE>100</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>current_spell</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>paths</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>prompt_colors</NAME>
          <VALUE>{"%c", "%C", "%y", "%R", "%r", "%c", "%C", "%y", "%R", "%r", "%c", "%C", "%y", "%R", "%r"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>finished</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>full_name</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>total_points</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>form_members</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>leader</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>start_location</NAME>
          <VALUE>#33</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
          <VALUE>10</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
          <VALUE>100</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
          <VALUE>100</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
          <VALUE>9932</VALUE>
        </PROPERTY>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>will_accept</NAME>
          <CODE>
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
          <NAME>i*nventory</NAME>
          <CODE>
            "#3:inventory none none none";
            if (player.held)
            player:tell("%y  You are holding:");
            player:show_inv();
            else
            player:tell("%yYou aren't holding anything.");
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>tell</NAME>
          <CODE>
            this:output(@args);
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>output</NAME>
          <CODE>
            "convert everything to a list";
            line = {""};
            if (length(args) &gt; 1)
            line = {tostr(@args)};
            else
            {?line = {}} = args;
            endif
            if (typeof(line) != LIST)
            line = {line};
            endif
            if (this.color)
            for each in (line)
            for x in [1..16]
            each = strsub(each, $color_codes[x], $raw_colors[x], 1);
            endfor
            each = strsub(each, "%^", "%", 1);
            notify(this, each);
            endfor
            else
            for each in (line)
            for x in [1..16]
            each = strsub(each, $color_codes[x], "", 1);
            endfor
            each = strsub(each, "%^", "%", 1);
            notify(this, each);
            endfor
            endif
            return 1;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>sees</NAME>
          <CODE>
            "will do effects checking";
            "takes four args: sensitivity level, list of messages, language, and lang msgs";
            "0 - 5: 0 blind, 5 super sight perception (eyes in the back o me head ya bastard)";
            "{arg1_sens_message, arg1+1_sens_message, arg1+2_sens_message, ...}";
            {sense_level, message_list, ?language = 0, ?lang_msg_list = {}} = args;
            if (lang_msg_list == {})
            lang_msg_list = {"You can't quite make out the words.", "", "", "", ""};
            endif
            num_messages = length(message_list);
            "calculate which message to tell";
            can_see = sense_level - this.base_see;
            "if greater than or equal to sense_level, use first message";
            if (can_see &lt;= 0)
            can_see = 1;
            "if less than sense_level, increment by one to get proper list indexing";
            else
            can_see = can_see + 1;
            endif
            "make sure you have that message";
            if (can_see &lt;= num_messages)
            "check if message is written, i.e. has a language specified";
            "check for language ability";
            if ((language == 0) || (language in this.known_languages))
            this:output(message_list[can_see]);
            return 1;
            else
            this:output(lang_msg_list[can_see]);
            return 1;
            endif
            else
            "no message to display";
            return 0;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>hears</NAME>
          <CODE>
            "will do effects checking";
            "takes four args: sensitivity level, and list of messages, language";
            "spoken, and language unknown message list";
            "can build in lang proficiencies later.";
            "0 - 5: 0 deaf, 5 super hearing";
            "{arg1_sens_message, arg1+1_sens_message, arg1+2_sens_message, ...}";
            "any item in $languages, or $default_language if not specified.";
            {sense_level, message_list, ?language = $default_language, ?lang_msg_list = {}} = args;
            if (lang_msg_list == {})
            lang_msg_list = {"You can't quite make out the words.", "", "", "", ""};
            endif
            num_messages = length(message_list);
            "calculate which message to tell";
            can_hear = sense_level - this.base_hear;
            "if greater than or equal to sense_level, use first message";
            if (can_hear &lt;= 0)
            can_hear = 1;
            "if less than sense_level, increment by one to get proper list indexing";
            else
            can_hear = can_hear + 1;
            endif
            "make sure you have that message";
            if (can_hear &lt;= num_messages)
            "check for language ability";
            if (language in this.known_languages)
            this:output(message_list[can_hear]);
            return 1;
            else
            this:output(lang_msg_list[can_hear]);
            return 1;
            endif
            else
            "no message to display";
            return 0;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>smells</NAME>
          <CODE>
            "will do effects checking";
            "takes two args: sensitivity level, and list of messages";
            "0 - 5: 0 no smell sense, 5 super sniffer perception (like a dog ya bastard)";
            "{arg1_sens_message, arg1+1_sens_message, arg1+2_sens_message, ...}";
            {sense_level, message_list} = args;
            num_messages = length(message_list);
            "calculate which message to tell";
            can_smell = sense_level - this.base_smell;
            "if greater than or equal to sense_level, use first message";
            if (can_smell &lt;= 0)
            can_smell = 1;
            "if less than sense_level, increment by one to get proper list indexing";
            else
            can_smell = can_smell + 1;
            endif
            "make sure you have that message";
            if (can_smell &lt;= num_messages)
            this:output(message_list[can_smell]);
            return 1;
            else
            "no message to display";
            return 0;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>output_raw</NAME>
          <CODE>
            if (length(args) &gt; 1)
            line = {tostr(@args)};
            else
            {?line = {}} = args;
            endif
            if (typeof(line) != LIST)
            line = {line};
            endif
            if (line == {})
            notify(this, "");
            else
            for each in (line)
            each = tostr(each);
            notify(this, each);
            endfor
            endif
            return 1;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>tell_raw</NAME>
          <CODE>
            this:output_raw(@args);
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>color</NAME>
          <CODE>
            if (length(args) == 0)
            player.color = abs(player.color - 1);
            elseif (args[1] == "on")
            player.color = 1;
            elseif (args[1] == "off")
            player.color = 0;
            else
            player:tell("Syntax:  color [on | off]");
            endif
            player:tell("Color is now ", player.color ? "on" | "off", ".");
            return player.color;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>prompt</NAME>
          <CODE>
            "$animate:prompt any any any";
            targ = this;
            if (length(args) &lt; 1)
            targ:tell_raw((("Current prompt string --&gt; " + "\"") + targ.prompt_string) + "\"");
            elseif (args[1] == "default")
            targ.prompt_string = $default_prompt;
            else
            targ.prompt_string = tostr(args[1]);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>max_hp</NAME>
          <CODE>
            return this.base_hp;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>sa*y</NAME>
          <CODE>
            "$animate:say any any any";
            if (player.consciousness != "awake")
            player:tell("You need to be awake to talk.");
            elseif (!args)
            player:tell("Say what?");
            return 0;
            else
            player:_say(argstr);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>mes*sage msg</NAME>
          <CODE>
            "$animate:msg any any any";
            if (!args)
            player:tell("%BMessage whom?%w");
            else
            target_str = args[1];
            "Decide if the target is actually a command argument";
            "View messages";
            if (target_str in {"view", "show"})
            player:view_messages();
            "Clear messages";
            elseif (target_str in {"clear", "delete"})
            player:clear_messages();
            "DM-only option for sending a global message";
            elseif ((target_str in {"all", "global"}) &amp;&amp; player:is_a($dm))
            player:msg_all(argstr);
            else
            {?target = #-1} = $utils:match(target_str, players(), 1, 1);
            "msg commands";
            message_raw = argstr[length(args[1]) + 1..$];
            "Players can only send messages to admins";
            if ((!(player in $admins)) &amp;&amp; (!(target in $admins)))
            player:tell("%BNo such administrator exists.%w");
            return;
            "Target is not a valid player OBJ";
            elseif (!valid(target))
            player:tell("%BNo such player exists.%w");
            return;
            "There was no message to send";
            elseif (message_raw == "")
            player:tell(("%BSend what message to " + target.name) + "?%w");
            return;
            "Target player is not connected so message will be logged.";
            elseif (!(target in connected_players()))
            player:tell(("%B" + target.name) + " is not connected.");
            "Truncate message if necessary";
            if (length(message_raw) &gt; $max_msg_length)
            message_trunc = message_raw[1..$max_msg_length] + " %w[message truncated]";
            message_raw = message_trunc;
            endif
            if (target:store_message(player, message_raw))
            player:tell(((("%BThe following message has been logged for " + target.name) + ":%G ") + message_raw) + "%w");
            return;
            else
            "Message box full.  Hopefully this won't happen often!";
            player:tell(("%B" + target.name) + "'s message box is full.  Message not stored.%w");
            endif
            else
            if (length(message_raw) &gt; $max_msg_length)
            message_trunc = message_raw[1..$max_msg_length] + " %w[message truncated]";
            message_raw = message_trunc;
            endif
            if (target:is_a($dm))
            "Let Dungeon Masters see the sender's OBJ number";
            message = ((((("%GMessage from " + player.name) + "[") + tostr(player)) + "]: ") + message_raw) + "%w";
            else
            message = ((("%GMessage from " + player.name) + ": ") + message_raw) + "%w";
            endif
            target:tell(message);
            message_echo = ((("%GYou message " + target.name) + " with: ") + message_raw) + "%w";
            player:tell(message_echo);
            endif
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>feels</NAME>
          <CODE>
            "will do effects checking";
            "takes two args: sensitivity level, and list of messages";
            "0 - 5: 0 numb, 5 super touch perception ";
            "{arg1_sens_message, arg1+1_sens_message, arg1+2_sens_message, ...}";
            {sense_level, message_list} = args;
            num_messages = length(message_list);
            "calculate which message to tell";
            can_feel = sense_level - this.base_feel;
            "if greater than or equal to sense_level, use first message";
            if (can_feel &lt;= 0)
            can_feel = 1;
            "if less than sense_level, increment by one to get proper list indexing";
            else
            can_feel = can_feel + 1;
            endif
            "make sure you have that message";
            if (can_feel &lt;= num_messages)
            this:output(message_list[can_feel]);
            return 1;
            else
            "no message to display";
            return 0;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>tastes</NAME>
          <CODE>
            "will do effects checking";
            "takes two args: sensitivity level, and list of messages";
            "0 - 5: 0 no tongue, 5 can taste farts ";
            "{arg1_sens_message, arg1+1_sens_message, arg1+2_sens_message, ...}";
            {sense_level, message_list} = args;
            num_messages = length(message_list);
            "calculate which message to tell";
            can_taste = sense_level - this.base_taste;
            "if greater than or equal to sense_level, use first message";
            if (can_taste &lt;= 0)
            can_taste = 1;
            "if less than sense_level, increment by one to get proper list indexing";
            else
            can_taste = can_taste + 1;
            endif
            "make sure you have that message";
            if (can_taste &lt;= num_messages)
            this:output(message_list[can_taste]);
            return 1;
            else
            "no message to display";
            return 0;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>disconnect</NAME>
          <CODE>
            "$animate:disconnect this none this";
            boot_player(this);
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
          <NAME>quit</NAME>
          <CODE>
            "$animate:quit none none none";
            cost = random(4000) + 10000;
            player:tell("~It will cost you ", cost, " coins to rent.  Continue? ");
            answer = read(player, 0);
            yesno = answer ? answer | "no";
            if (yesno[1] == "y")
            player:tell("");
            player:tell("~Would you like your possessions identified? ");
            answertwo = read(player, 0);
            player:disconnect();
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>store_message</NAME>
          <CODE>
            time_stamp = time();
            sent_by = args[1];
            message = args[2];
            "test for full message box";
            if (length(toliteral(this.messages)) &gt; $max_msg_box_size)
            return 0;
            else
            msg = {time_stamp, sent_by, message};
            this.messages = listappend(this.messages, msg);
            return 1;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>who</NAME>
          <CODE>
            "$animate:who() any any any";
            "Create your lists";
            dms = archs = coders = known_players = unknown_players = {};
            for x in (connected_players())
            isknown = x:known_to(player)[1];
            if (x:is_a($dm))
            dms = {@dms, x};
            elseif (x:is_a($coder))
            coders = {@coders, x};
            elseif (x:is_a($architect))
            archs = {@archs, x};
            elseif (isknown)
            known_players = {@known_players, x};
            else
            unknown_players = {@unknown_players, x};
            endif
            endfor
            "Header";
            player:tell();
            player:tell($who.header);
            if ((dms || archs) || coders)
            player:tell($who.divider);
            "DMs, Architects, Coders";
            for dm in (dms)
            player:tell(dm:who_string(player));
            endfor
            for arch in (archs)
            player:tell(arch:who_string(player));
            endfor
            for coder in (coders)
            player:tell(coder:who_string(player));
            endfor
            endif
            "divider test";
            if (known_players || unknown_players)
            player:tell($who.divider);
            "Known players";
            for known in (known_players)
            player:tell(known:who_string(player));
            endfor
            for unknown in (unknown_players)
            player:tell(unknown:who_string(player));
            endfor
            endif
            "divider for globals is now necessary";
            player:tell($who.divider);
            "Global statistics;  may wish to make this a separate function";
            curplayers = length(connected_players());
            curtime = $utils:ftime(ctime());
            maxplayers = $max_connected[1];
            maxtime = $utils:ftime(ctime($max_connected[2]));
            pstr = (curplayers == 1) ? " player" | " players";
            mpstr = (maxplayers == 1) ? " player" | " players";
            totalstr = (((tostr(curplayers) + pstr) + " currently logged in on ") + curtime) + ".";
            player:tell("%C  Total: " + totalstr);
            if (maxplayers == curplayers)
            player:tell("    Max: Currently at maximum connected players.");
            else
            player:tell((((("    Max: " + tostr(maxplayers)) + mpstr) + " on ") + maxtime) + ".");
            endif
            player:tell((" Uptime: " + $utils:_uptime()) + "%w");
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
          <NAME>help</NAME>
          <CODE>
            "#3:help any none none";
            {?topic = "help"} = args;
            "create list of help dbs by traversing parents, and storing their .help_db prop";
            dude = parent(player);
            dbs = {};
            while (valid(dude))
            if (dude:has_prop("help_db"))
            dbs = {@dbs, dude.help_db};
            endif
            dude = parent(dude);
            endwhile
            if (!dbs)
            player:tell("No help databases defined for your player type.");
            else
            found = {};
            for db in (dbs)
            results = db:find_topics(topic);
            for each in (results)
            found = {@found, {db, @each}};
            endfor
            endfor
            exact_match = {};
            if (found)
            "check for exact match";
            for each in (found)
            if (topic == each[2])
            exact_match = each;
            endif
            endfor
            if (exact_match != {})
            found = {exact_match};
            endif
            if (length(found) &gt; 1)
            player:tell("There are multiple topics that match your query:");
            for each in (found)
            player:tell("  %W", each[2]);
            endfor
            return 0;
            else
            "display results";
            "topic_ref-1 = db object.  -2 = topic string.  -3 article num.";
            topic_ref = found[1];
            if (topic_ref[1]:has_prop(topic_ref[3]))
            player:tell("Showing help on topic %W", topic_ref[2], "%w article %W", topic_ref[3], "%w:");
            player:tell(topic_ref[1].(topic_ref[3]));
            return;
            else
            player:tell("Topic %W", topic_ref[2], "%w points to Article %W", topic_ref[3], "%w, but the article appears to be missing.  This error has been logged, and an Administrator will be fixing it shortly.");
            $log:add_entry("help", $log.log_levels[1], (((("Article missing: " + topic_ref[2]) + "  ") + topic_ref[3]) + "  ") + topic_ref[1].name);
            return;
            endif
            endif
            endif
            player:tell("No help topics matched your query.");
            return 0;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
          <NAME>uptime</NAME>
          <CODE>
            "$animate:uptime() none none none";
            player:tell(("%CUptime: " + $utils:_uptime()) + "%w");
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>view_messages</NAME>
          <CODE>
            if (this.messages == {})
            this:tell("%BYou have no messages to view.%w");
            else
            this:tell(("%BYou have " + tostr(length(this.messages))) + " messages saved:");
            for x in (this.messages)
            msg_time = ctime(x[1]);
            msg_sender = x[2].name;
            msg_text = x[3];
            this:tell((((("%C" + msg_time) + " %B") + msg_sender) + ":%G ") + msg_text);
            endfor
            this:tell("%BEnd of saved messages.%w");
            if (length(toliteral(this.messages)) &gt; $max_msg_box_size)
            this:tell("%YYour message box is currently full.%w");
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>clear_messages</NAME>
          <CODE>
            player.messages = {};
            player:tell("%BMessages cleared.%w");
            return;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
          <NAME>drop</NAME>
          <CODE>
            "$animate:drop any none none";
            "will drop any item that is currently in your 'held' list";
            target = dobjstr;
            items = player.held;
            matches = player:match(target, items);
            if (matches == {})
            player:tell("You are not holding anything called %W", target, "%w.");
            else
            results = player:_drop(matches[1]);
            player:tell(results[2]);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_drop</NAME>
          <CODE>
            "$animate:_drop this none this";
            {what} = args;
            if (what in this.held)
            if (what:move_to(this.location)[1] == 1)
            this:_unwield(what);
            return {1, ("You drop %W" + what.name) + "%w."};
            else
            return {0, ("You cannot drop %W" + what.name) + "%w."};
            endif
            else
            return {0, ("You are not holding %W" + what.name) + "%w."};
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>describe_to</NAME>
          <CODE>
            "$animate:describe_to(target, [0|1|2]) this none this";
            "returns 0 if target isn't a valid animate objidnum";
            "0 sends a one line (short) description, typically a name or handle";
            "  in the form of a sentence, possibly incorporating their state.";
            "1 sends a name, handle, and description property.  multi line.";
            "2 sends all of the above, plus what the person is wearing, more detail.";
            {target, ?msglen = 0} = args;
            if (!target:is_a($animate))
            return 0;
            else
            shownum = "";
            if (target:is_a($architect))
            shownum = (" (" + tostr(this)) + ")";
            endif
            known = this:known_to(target);
            spec = " the " + this.species.generic_name;
            if (known[1])
            name = known[2] + spec;
            else
            name = $utils:capitalize(known[2]);
            endif
            pos = this.position;
            con = this.consciousness;
            if (con == "awake")
            where = " here.";
            else
            where = (" here, " + con) + ".";
            endif
            end = (" is " + pos) + where;
            target:sees(3, {(name + shownum) + end});
            if (msglen in {1, 2})
            for x in (this.description)
            target:sees(3, {x});
            endfor
            if (msglen == 2)
            prep = $utils:capitalize(#0.(this.gender)[2]);
            target:tell("");
            if (this.worn)
            target:tell(("%y  " + prep) + " is wearing:");
            this:show_eq(target);
            else
            target:tell(("%y" + prep) + " is not wearing any equipment.%w");
            endif
            if (this.held)
            target:tell("");
            target:tell(("%y  " + prep) + " is holding:");
            this:show_inv(target);
            endif
            endif
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>get</NAME>
          <CODE>
            "#3:get any any any";
            "get item [from item2]";
            "picks up item from ground, from a container in room, or from a container in inventory.";
            "puts item in held slot.";
            "match and validate the target location (from what)";
            if (prepstr == "from")
            target_locs = {@player.contents, @player.location.contents};
            target_loc = player:match(iobjstr, target_locs);
            if (target_loc == {})
            player:tell(("There is no %W" + iobjstr) + "%w here.");
            return;
            elseif (length(target_loc) &gt; 1)
            x = 1;
            player:tell(("Which %W" + iobjstr) + "%w do you mean?");
            for each in (target_loc)
            player:tell((tostr(x) + ":  ") + target_loc[x].name);
            x = x + 1;
            endfor
            return;
            elseif (!target_loc[1]:is_a($container))
            player:tell(target_loc[1].name + " is not a container.");
            return;
            else
            target_loc = target_loc[1];
            endif
            else
            target_loc = player.location;
            endif
            "match and validate the target (what are you getting)";
            target = player:match(dobjstr, target_loc.contents);
            if (target == {})
            player:tell(((("There is no %W" + dobjstr) + "%w in %W") + target_loc.name) + "%w.");
            elseif (length(target) &gt; 1)
            x = 1;
            player:tell(("Which %W" + dobjstr) + "%w do you mean?");
            for each in (target)
            player:tell((tostr(x) + ":  ") + target[x].name);
            x = x + 1;
            endfor
            "dobjstr and iobjstr are both matched uniquely";
            "try to move the item";
            else
            player:_get(target[1], target_loc);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>put</NAME>
          <CODE>
            "#3:put any any any";
            "put item in item2";
            "picks up item from ground, or uses held item.";
            "puts item in specified container.";
            "match and validate the target location (put into what)";
            if (prepstr in {"in", "into", "inside"})
            target_dests = {@player.contents, @player.location.contents};
            target_dest = player:match(iobjstr, target_dests);
            if (target_dest == {})
            player:tell(("There is no %W" + iobjstr) + "%w here.");
            return;
            elseif (length(target_dest) &gt; 1)
            x = 1;
            player:tell(("Which %W" + iobjstr) + "%w do you mean?");
            for each in (target_dest)
            player:tell((tostr(x) + ":  ") + target_dest[x].name);
            x = x + 1;
            endfor
            return;
            elseif (!target_dest[1]:is_a($container))
            player:tell(target_dest[1].name + " is not a container.");
            return;
            else
            target_dest = target_dest[1];
            endif
            else
            player:tell("Syntax: put object1 in/into/inside object2");
            return;
            endif
            "match and validate the target (what are you putting)";
            target = player:match(dobjstr, {@player.held, @player.location.contents});
            if (target == {})
            player:tell(("There is no %W" + dobjstr) + "%w here.");
            elseif (length(target) &gt; 1)
            x = 1;
            player:tell(("Which %W" + dobjstr) + "%w do you mean?");
            for each in (target)
            player:tell((tostr(x) + ":  ") + target[x].name);
            x = x + 1;
            endfor
            "dobjstr and iobjstr are both matched uniquely";
            "try to move the item";
            else
            this:_put(target[1], target_dest);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>adm*inistrator</NAME>
          <CODE>
            "$animate:admin any any any";
            if (player in $admins)
            if (!("admin" in player.current_channels))
            player:tell("%WYour channel has been turned on.%w");
            player.current_channels = setadd(player.current_channels, "admin");
            endif
            for admin in ($channels.admin_channel)
            if ("admin" in admin.current_channels)
            admin:tell();
            admin:tell((((($channels.admin_prefix + " ") + player.name) + ": ") + argstr) + "%w");
            endif
            endfor
            else
            player:tell($bad_command);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>can_wear</NAME>
          <CODE>
            "#3:can_wear() this none this";
            "takes OBJ wearable...returns {1|0, message}";
            wearable = args[1];
            if (!wearable:is_a($wearable))
            return {0, "That item is not wearable."};
            elseif (!(this.species.body_type in wearable.body_type))
            return {0, "That item does not fit your body properly."};
            else
            x = wearable:fits(this);
            if (x[1] == 0)
            return x;
            else
            slots_used = 0;
            for each in (this.worn)
            if (each.where == wearable.where)
            slots_used = slots_used + wearable.quantity;
            endif
            endfor
            max_worn = this.species.max_worn[(wearable.where in this.species.max_worn) + 1];
            if ((wearable.quantity + slots_used) &gt; max_worn)
            return {0, ("You cannot wear that many items on your " + wearable.where) + "."};
            else
            return {1, ""};
            endif
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_wear</NAME>
          <CODE>
            "#3:_wear() this none this";
            "OBJ wearable, returns {0|1, message}";
            wearable = args[1];
            if (wearable in this.worn)
            return {0, "You are already wearing that item."};
            else
            x = this:can_wear(wearable);
            if (x[1] == 0)
            return x;
            "check to see if can hold item, if not already";
            else
            if (wearable.location != this)
            retval = wearable:move_to(this);
            if (retval[1] != 1)
            return retval;
            endif
            endif
            if (wearable in this.wielded)
            this:_unwield(wearable);
            endif
            this.worn = {@this.worn, wearable};
            this.held = setremove(this.held, wearable);
            this:tell(("You wear " + wearable.name) + ".");
            room = setremove(player.location.contents, player);
            audience = {};
            for x in (room)
            if (x:is_a($animate))
            audience = {@audience, x};
            endif
            endfor
            for y in (audience)
            y:sees(3, {((this.name + " wears ") + wearable.name) + "."});
            endfor
            return {1, ""};
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_remove</NAME>
          <CODE>
            "#3:_remove() this none this";
            "OBJ wearable, returns {0|1, message}";
            wearable = args[1];
            if (!(wearable in this.worn))
            return {0, "You are not wearing that item."};
            else
            retval = this:can_hold(wearable);
            if (retval[1] == 0)
            return {0, "You cannot hold any more items."};
            else
            this.held = {@this.held, wearable};
            this.worn = setremove(this.worn, wearable);
            this:tell(("You remove " + wearable.name) + ".");
            room = setremove(player.location.contents, player);
            audience = {};
            for x in (room)
            if (x:is_a($animate))
            audience = {@audience, x};
            endif
            endfor
            for y in (audience)
            y:sees(3, {((this.name + " removes ") + wearable.name) + "."});
            endfor
            return {1, ""};
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
          <NAME>eq*uipment</NAME>
          <CODE>
            "$animate:eq*uipment() none none none";
            if (this.worn)
            this:tell("%y  You are wearing:");
            this:show_eq();
            else
            this:tell("%yYou are not wearing any equipment.");
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
          <NAME>wear</NAME>
          <CODE>
            "#3:wear any none none";
            "wear item";
            "can wear either from inventory, or from on ground";
            "matches to inventory first";
            target = player:match(dobjstr, {@this.held, @this.location.contents});
            if (target == {})
            player:tell(("There is no %W" + dobjstr) + "%w here.");
            elseif (length(target) &gt; 1)
            x = 1;
            player:tell(("Which %W" + dobjstr) + "%w do you mean?");
            for each in (target)
            player:tell((tostr(x) + ":  ") + target[x].name);
            x = x + 1;
            endfor
            "dobjstr matched uniquely";
            "try to move the item";
            else
            retval = this:_wear(target[1]);
            if (retval[1] == 0)
            this:tell(retval[2]);
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
          <NAME>rem*ove</NAME>
          <CODE>
            "#3:remove any none none";
            "remove item";
            "match to items in worn list";
            target = player:match(dobjstr, this.worn);
            if (target == {})
            player:tell(("You are not wearing any %W" + dobjstr) + "%w.");
            elseif (length(target) &gt; 1)
            x = 1;
            player:tell(("Which %W" + dobjstr) + "%w do you mean?");
            for each in (target)
            player:tell((tostr(x) + ":  ") + target[x].name);
            x = x + 1;
            endfor
            "dobjstr matched uniquely";
            "try to move the item";
            else
            retval = this:_remove(target[1]);
            if (retval[1] == 0)
            this:tell(retval[2]);
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>can_hold</NAME>
          <CODE>
            "#3:can_hold() this none this";
            "takes OBJ item...returns {1|0, message}";
            item = args[1];
            if (length(this.held) &gt;= this.species.max_held)
            return {0, "You cannot hold any more items."};
            else
            return {1, ""};
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
          <NAME>wield</NAME>
          <CODE>
            "#3:wield any none none";
            if (player.consciousness != "awake")
            player:tell("You need to be awake to wield.");
            else
            target = player:match(dobjstr, this.held);
            if (target == {})
            player:tell(("You are not holding any %W" + dobjstr) + "%w.");
            elseif (length(target) &gt; 1)
            x = 1;
            player:tell(("Which %W" + dobjstr) + "%w do you mean?");
            for each in (target)
            player:tell((tostr(x) + ":  ") + target[x].name);
            x = x + 1;
            endfor
            "dobjstr matched uniquely";
            "try to wield item";
            else
            retval = this:_wield(target[1]);
            if (retval[1] == 0)
            this:tell(retval[2]);
            endif
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_wield</NAME>
          <CODE>
            "#3:_wield() this none this";
            "OBJ item, returns {0|1, message}";
            item = args[1];
            hands_used = 0;
            for each in (this.wielded)
            hands_used = hands_used + each.handedness;
            endfor
            if (item in this.wielded)
            return {0, "You are already wielding that item!"};
            elseif (hands_used == this.species.hands)
            return {0, "You cannot wield any more items."};
            elseif ((hands_used + item.handedness) &gt; this.species.hands)
            return {0, "You do not have enough hands free to wield that item."};
            else
            this.wielded = {@this.wielded, item};
            this:tell(("You wield " + item.name) + ".");
            room = setremove(player.location.contents, player);
            audience = {};
            for x in (room)
            if (x:is_a($animate))
            audience = {@audience, x};
            endif
            endfor
            for y in (audience)
            y:sees(3, {((this.name + " wields ") + item.name) + "."});
            endfor
            return {1, ""};
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_unwield</NAME>
          <CODE>
            "#3:_unwield() this none this";
            "OBJ item, returns {0|1, message}";
            item = args[1];
            if (!(item in this.wielded))
            return {0, "You are not wielding that item!"};
            else
            this.wielded = setremove(this.wielded, item);
            this:tell(("You unwield " + item.name) + ".");
            room = setremove(player.location.contents, player);
            audience = {};
            for x in (room)
            if (x:is_a($animate))
            audience = {@audience, x};
            endif
            endfor
            for y in (audience)
            y:sees(3, {((this.name + " unwields ") + item.name) + "."});
            endfor
            return {1, ""};
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
          <NAME>unwield</NAME>
          <CODE>
            "#3:unwield any none none";
            if (player.consciousness != "awake")
            player:tell("You need to be awake to unwield.");
            elseif (dobjstr == "")
            player:tell("What do you want to unwield?");
            for each in (player.wielded)
            player:tell("  ", each:known_to(player)[2]);
            endfor
            else
            target = player:match(dobjstr, this.held);
            if (target == {})
            player:tell(("You are not holding any %W" + dobjstr) + "%w.");
            elseif (length(target) &gt; 1)
            x = 1;
            player:tell(("Which %W" + dobjstr) + "%w do you mean?");
            for each in (target)
            player:tell((tostr(x) + ":  ") + target[x].name);
            x = x + 1;
            endfor
            "dobjstr matched uniquely";
            "try to wield item";
            else
            retval = this:_unwield(target[1]);
            if (retval[1] == 0)
            this:tell(retval[2]);
            endif
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>carried_weight</NAME>
          <CODE>
            "$animate:carried_weight()";
            if (this.contents == {})
            return 0;
            else
            weight = 0;
            for each in (this.contents)
            weight = weight + each:weight();
            endfor
            return weight;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>str</NAME>
          <CODE>
            "$animate:str() this none this";
            "returns the total str, which includes base plus any modifiers";
            return this.base_str;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>dex</NAME>
          <CODE>
            "$animate:dex() this none this";
            "returns the total dex, which includes base plus any modifiers";
            return this.base_dex;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>cnc</NAME>
          <CODE>
            "$animate:cnc() this none this";
            "returns the total cnc, which includes base plus any modifiers";
            return this.base_cnc;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>int</NAME>
          <CODE>
            "$animate:int() this none this";
            "returns the total int, which includes base plus any modifiers";
            return this.base_int;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>con</NAME>
          <CODE>
            "$animate:con() this none this";
            "returns the total con, which includes base plus any modifiers";
            return this.base_con;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>chan*nels</NAME>
          <CODE>
            "$animate:channel any any any";
            admin = player in $admins;
            designer = player in $architect:descendants();
            dm = player in $dm:descendants();
            if (admin || designer)
            if (!args)
            player:tell("");
            player:tell("%WCurrent channel status:%w");
            player:tell("%b--%B--%c---%C---%W---%C---%c---%B--%b--%w");
            player:tell("");
            if (admin)
            status = ("admin" in player.current_channels) ? " %WON" | " %rOFF";
            admin_l = {};
            for x in ($channels.admin_channel)
            if (("admin" in x.current_channels) &amp;&amp; (x in connected_players()))
            admin_l = {@admin_l, x.name};
            endif
            endfor
            player:tell(("%cAdmin channel: " + status) + "%w");
            player:tell("%yListeners: %C" + $utils:list_to_string(admin_l, ", "));
            player:tell("");
            endif
            if (designer)
            status = ("design" in player.current_channels) ? "%WON" | "%rOFF";
            design_l = {};
            for x in ($channels.design_channel)
            if (("design" in x.current_channels) &amp;&amp; (x in connected_players()))
            design_l = {@design_l, x.name};
            endif
            endfor
            player:tell(("%cDesign channel: " + status) + "%w");
            player:tell("%yListeners: %C" + $utils:list_to_string(design_l, ", "));
            player:tell("");
            endif
            if (dm)
            status = ("dm" in player.current_channels) ? "    %WON" | "    %rOFF";
            dm_l = {};
            for x in ($channels.dm_channel)
            if (("dm" in x.current_channels) &amp;&amp; (x in connected_players()))
            dm_l = {@dm_l, x.name};
            endif
            endfor
            player:tell(("%cDM channel: " + status) + "%w");
            player:tell("%yListeners: %C" + $utils:list_to_string(dm_l, ", "));
            player:tell("");
            endif
            player:tell("%b--%B--%c---%C---%W---%C---%c---%B--%b--%w");
            else
            chan = args[1];
            if (chan in {"adm", "admi", "admin"})
            if (admin)
            if ("admin" in player.current_channels)
            player.current_channels = setremove(player.current_channels, "admin");
            player:tell($channels.admin_prefix + " channel now %rOFF.%w");
            else
            player.current_channels = setadd(player.current_channels, "admin");
            player:tell($channels.admin_prefix + " channel now %WON.%w");
            endif
            else
            player:tell("%WYou must be an Administrator to access the admin channel.%w");
            endif
            elseif (chan in {"des", "desi", "desig", "design"})
            if (designer)
            if ("design" in player.current_channels)
            player.current_channels = setremove(player.current_channels, "design");
            player:tell($channels.design_prefix + " channel now %rOFF.%w");
            else
            player.current_channels = setadd(player.current_channels, "design");
            player:tell($channels.design_prefix + " channel now %WON.%w");
            endif
            else
            player:tell("%WYou must be a Game Designer to access the design channel.%w");
            endif
            elseif (chan == "dm")
            if (dm)
            if ("dm" in player.current_channels)
            player.current_channels = setremove(player.current_channels, "dm");
            player:tell($channels.dm_prefix + " channel now %rOFF.%w");
            else
            player.current_channels = setadd(player.current_channels, "dm");
            player:tell($channels.dm_prefix + " channel now %WON.%w");
            endif
            else
            player:tell("%WYou must be a Dungeon Master to access the DM channel.%w");
            endif
            elseif (chan == "force")
            if (dm)
            target = argstr[length(args[1]) + 2..$];
            if (target)
            player:force_channel(target);
            else
            player:tell("%WForce which channel?  %GAdmin, design, or DM?%w");
            endif
            else
            player:tell("%WOnly DM's can force channels.%w");
            endif
            else
            player:tell("%WNo such channel.%w");
            endif
            endif
            else
            player:tell($bad_command);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>mobility</NAME>
          <CODE>
            "$animate:mobility() this none this";
            "returns the mobility status (str) of animate: mobile, encumbered, burdened, immobile";
            if (this.consciousness == "dead")
            return "immobile";
            else
            cweight = this:carried_weight();
            max_weight = $str_weight_table[this:str()];
            limit = (max_weight * 3) / 2;
            if (cweight &lt; (max_weight / 2))
            return "mobile";
            elseif (cweight &lt; max_weight)
            return "encumbered";
            elseif (cweight &lt; ((limit * 10) / 9))
            return "burdened";
            else
            return "immobile";
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>ac</NAME>
          <CODE>
            "$animate:ac() this none this";
            "calculate base ac";
            bac = this.base_ac;
            for each in (this.worn)
            if (each.base_ac &lt; bac)
            bac = each.base_ac;
            endif
            endfor
            ac = bac + $dex_ac_table[this:dex()];
            "add all the ac modifiers from worn items";
            for each in (this.worn)
            ac = ac + each.ac_mod;
            endfor
            for each in (this.wielded)
            if (each:is_a($shield))
            ac = ac + each.ac_mod;
            endif
            endfor
            if (this.combat_stance == "defend")
            ac = ac - 3;
            elseif (this.combat_stance == "passive")
            ac = ac + 5;
            endif
            return ac;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>silent</NAME>
          <CODE>
            "$animate:silent any any any";
            if ((player in $admins) || (player in $architect:descendants()))
            player.current_channels = {};
            player:tell("%WAll channels have been toggled %rOFF.%w");
            else
            player:tell($bad_command);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
          <NAME>sc*ore st*atistics stats</NAME>
          <CODE>
            "$animate:stats none none none";
            cur_int = player:int();
            base_int = player.base_int;
            cur_str = player:str();
            base_str = player.base_str;
            cur_dex = player:dex();
            base_dex = player.base_dex;
            cur_con = player:con();
            base_con = player.base_con;
            cur_cnc = player:cnc();
            base_cnc = player.base_cnc;
            cur_spd = player:spd();
            base_spd = player.base_spd;
            "calculate weight carried bar";
            cweight = player:carried_weight();
            max_weight = $str_weight_table[cur_str];
            unit = max_weight / 10;
            units_carried = cweight / unit;
            if (units_carried &gt; 10)
            meter = (("%B" + $utils:padr("", 10, "*")) + "%R") + $utils:padr("", units_carried - 10, "*");
            else
            meter = "%B" + $utils:padr("", units_carried, "*");
            endif
            weight_bar = (("%c[" + meter) + $utils:padr("", 15 - units_carried, " ")) + "%c]";
            "calculate strength meter bar";
            str_str = ((((($utils:padl(tostr(cur_str), 2, " ") + " %c[%B") + $utils:padr("", base_str, "*")) + "%g") + $utils:padr("", cur_str - base_str, "*")) + $utils:padr("", 20 - cur_str, " ")) + "%c]";
            "calculate intelligence meter bar";
            int_str = ((((($utils:padl(tostr(cur_int), 2, " ") + " %c[%B") + $utils:padr("", base_int, "*")) + "%g") + $utils:padr("", cur_int - base_int, "*")) + $utils:padr("", 20 - cur_int, " ")) + "%c]";
            "calculate dexterity meter bar";
            dex_str = ((((($utils:padl(tostr(cur_dex), 2, " ") + " %c[%B") + $utils:padr("", base_dex, "*")) + "%g") + $utils:padr("", cur_dex - base_dex, "*")) + $utils:padr("", 20 - cur_dex, " ")) + "%c]";
            "calculate constitution meter bar";
            con_str = ((((($utils:padl(tostr(cur_con), 2, " ") + " %c[%B") + $utils:padr("", base_con, "*")) + "%g") + $utils:padr("", cur_con - base_con, "*")) + $utils:padr("", 20 - cur_con, " ")) + "%c]";
            "calculate concentration meter bar";
            cnc_str = ((((($utils:padl(tostr(cur_cnc), 2, " ") + " %c[%B") + $utils:padr("", base_cnc, "*")) + "%g") + $utils:padr("", cur_cnc - base_cnc, "*")) + $utils:padr("", 20 - cur_cnc, " ")) + "%c]";
            "calculate speed meter bar";
            spd_str = ((((($utils:padl(tostr(cur_spd), 2, " ") + " %c[%B") + $utils:padr("", base_spd, "*")) + "%g") + $utils:padr("", cur_spd - base_spd, "*")) + $utils:padr("", 20 - cur_spd, " ")) + "%c]";
            player:tell("");
            "name, gender, age";
            player:tell(((((((((("%W     " + player.name) + " the ") + player.species.generic_name) + ".   %cGender: %W") + player.gender) + "%c      You are %W") + tostr(player.age / 365)) + "%c years and %W") + tostr(player.age % 365)) + "%c days old.");
            "status: position, mobility, consciousness, combat stance";
            player:tell((((((("%W      You are " + player.position) + " ") + player.consciousness) + ", ") + player:mobility()) + ".    %cCombat Stance: %W") + player.combat_stance);
            weight_str = $utils:padr(tostr(player.base_weight) + " lbs.", 28, " ");
            player:tell((("%c      Weight: %W" + weight_str) + "%cStrength: %W") + str_str);
            height_str = $utils:padr(((tostr(player.height / 12) + "' ") + tostr(player.height % 12)) + "\"", 24, " ");
            player:tell((("%c      Height: %W" + height_str) + "%cIntelligence: %W") + int_str);
            "weight carried meter";
            player:tell(((((("%c    Carrying: %W" + tostr(cweight)) + "%c lbs.") + weight_bar) + $utils:padr("", 5 - length(tostr(cweight)), " ")) + "%cDexterity: %W") + dex_str);
            "hit points and Armor class";
            hp_str = "%c  Hit Points: %W" + $utils:padr((tostr(player.cur_hp) + "%c/%W") + tostr(player:max_hp()), 28, " ");
            ac_str = "%c Armor Class: %W" + $utils:padr(tostr(player:ac()), 23, " ");
            end_foc_str = "%c   Endurance: %W" + $utils:padr((((((tostr(player.cur_endurance) + "%c/%W") + tostr(player:max_endurance())) + "%c  Focus: %W") + tostr(player.cur_focus)) + "%c/%W") + tostr(player:max_focus()), 43, " ");
            player:tell((hp_str + "%cConstitution: %W") + con_str);
            player:tell((ac_str + "%cConcentration: %W") + cnc_str);
            player:tell((end_foc_str + "%cSpeed: %W") + spd_str);
            "thaco, damage modifiers";
            "effects";
            player:tell("");
            "create path strings";
            path_names = {};
            path_strs = {};
            num_paths = length(this.paths) / 2;
            for x in [1..length(this.paths)]
            if (typeof(this.paths[x]) == OBJ)
            path_names = {@path_names, this.paths[x]};
            endif
            endfor
            path_names = $utils:sort(path_names);
            for path in (path_names)
            path_val = this:path_value(path);
            path_str = (((((("%c" + $utils:padl(path.name, 20, " ")) + ": %W") + $utils:padl(tostr(path_val), 2, " ")) + "%c [%Y") + $utils:padl("", path_val, "*")) + $utils:padr("", 10 - path_val, " ")) + "%c]";
            path_strs = {@path_strs, path_str};
            endfor
            "skills and stuff";
            skill_names = {};
            num_skills = length(this.skills) / 2;
            for x in [1..length(this.skills)]
            if (typeof(this.skills[x]) == STR)
            skill_names = {@skill_names, this.skills[x]};
            endif
            endfor
            x = 1;
            skill_names = $utils:sort(skill_names);
            for skill in (skill_names)
            skill_val = this:skill_value(skill);
            skillstr = (((((("%c" + $utils:padl(strsub(skill, "_", " "), 20, " ")) + ": %W") + $utils:padl(tostr(skill_val), 2, " ")) + "%c [%Y") + $utils:padl("", skill_val, "*")) + $utils:padr("", 10 - skill_val, " ")) + "%c]";
            player:tell(skillstr + ((x &gt; length(path_strs)) ? "" | path_strs[x]));
            x = x + 1;
            endfor
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_say</NAME>
          <CODE>
            "$animate:_say this none this";
            speech = args[1];
            lang = this.current_language;
            audience = setremove(this.location:get_animates(), this);
            for y in (audience)
            name = this:known_to(y)[2];
            cname = $utils:capitalize(name);
            heard = ((("%C" + cname) + " says, \"") + speech) + "%C\"%w";
            partial = ("You hear " + name) + " speak but you can't make out the words.";
            deaf = ("You see " + name) + "'s lips move, but you hear nothing.";
            l_heard = ((("%C" + cname) + " says something in ") + lang.name) + ".%w";
            first = {heard, partial, deaf};
            second = {l_heard, partial, deaf};
            "Deaf players have a 25% chance of noticing that someone spoke.";
            chance = (y.base_hear &lt; 2) ? random(4) | 1;
            if (chance == 1)
            y:hears(3, first, lang, second);
            endif
            endfor
            speech_echo = ("%CYou say, \"" + speech) + "%C\"%w";
            this:tell(speech_echo);
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>afk away</NAME>
          <CODE>
            "$animate:afk any any any";
            group = setremove(player.location.contents, player);
            if (player.afk)
            player.afk = 0;
            player:tell("%yYou are no longer %W[Away From Keyboard]%w");
            for x in (group)
            x:tell(("%y" + player.name) + " is no longer %W[Away From Keyboard]%w");
            endfor
            else
            player.afk = 1;
            player:tell("%GYou are now %W[Away From Keyboard]%w");
            for x in (group)
            x:tell(("%G" + player.name) + " is now %W[Away From Keyboard]%w");
            endfor
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>skill_value</NAME>
          <CODE>
            "$animate:skill_value( STR ) this none this";
            "returns the skill value for skill named STR";
            {skill_name} = args;
            loc = skill_name in this.skills;
            if (loc == 0)
            return 0;
            else
            value = this.skills[loc + 1];
            return value;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="any" PREP="none" IOBJ="none">
          <NAME>att*ack</NAME>
          <CODE>
            "$animate:attack any none none";
            "sets combat stance to attack, optionally initiates combat with target";
            targstr = argstr;
            if (player.consciousness != "awake")
            player:tell("You must be awake to attack!");
            elseif (targstr == "")
            if (this.combat_stance == "attack")
            this:tell("You are already in an attack posture.");
            else
            this:set_combat_stance("attack");
            endif
            else
            this:set_combat_stance("attack");
            "match the target";
            target = dobjstr;
            "build list of candidates to which to match";
            items = player.location.contents;
            matches = player:match(target, items);
            if (matches == {})
            player:tell(("There is no %W" + dobjstr) + "%w here.");
            else
            targobj = matches[1];
            if (targobj:is_a($animate))
            "is target dead already?";
            if (targobj.consciousness == "dead")
            player:tell("That target is already dead!");
            else
            player:_attack(targobj);
            endif
            else
            player:tell(((("You cannot attack " + targobj.gprep) + " ") + targobj.generic_name) + "!");
            endif
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>set_combat_stance</NAME>
          <CODE>
            "$animate:set_combat_stance() this none this";
            {posture} = args;
            if (posture == "attack")
            this.combat_stance = "attack";
            this:tell("You assume an attack posture, ready for combat.");
            return 1;
            elseif (posture == "defend")
            this.combat_stance = "defend";
            this:tell("You shift to a defensive posture, and are less vulnerable to attacks.");
            return 1;
            elseif (posture == "flee")
            this.combat_stance = "flee";
            this:tell("You shift to a fleeing posture, and will run at the first sign of battle.");
            return 1;
            elseif (posture == "passive")
            this.combat_stance = "passive";
            this:tell("You assume a passive combat stance, and are more vulnerable to attacks.");
            return 1;
            else
            return 0;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
          <NAME>def*end</NAME>
          <CODE>
            "$animate:defend none none none";
            if (this.combat_stance == "defend")
            this:tell("You are already in a defensive posture.");
            else
            this:set_combat_stance("defend");
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
          <NAME>flee</NAME>
          <CODE>
            "$animate:flee any none none";
            targstr = argstr;
            if (targstr == "")
            if (this.combat_stance == "flee")
            this:tell("You are already set to flee from combat.");
            else
            this:set_combat_stance("flee");
            endif
            else
            this:tell("You are currently not in combat with anyone.");
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
          <NAME>passive</NAME>
          <CODE>
            "$animate:passive none none none";
            if (this.combat_stance == "passive")
            this:tell("You are already in a passive combat stance.");
            else
            this:set_combat_stance("passive");
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>info*rmation</NAME>
          <CODE>
            "$animate:info any any any";
            "Only known players are available for info.";
            player:tell("");
            targ = 0;
            if (argstr)
            known = argstr in player.known_players;
            if (known)
            targ = player.known_players[known - 1];
            if (player in $admins)
            "Give admins the raw name.";
            name = targ.name;
            else
            name = player.known_players[known];
            endif
            else
            "Check to see if target is a special case.";
            "Or if player is an Admin and therefore gets info on anyone.";
            match = $utils:match(argstr, players(), 1, 1);
            if (match != {})
            matchobj = match[1];
            if ((matchobj in {@$architect:descendants(), @$admins, player}) || (player in $admins))
            targ = matchobj;
            name = matchobj.name;
            endif
            endif
            endif
            else
            player:tell("%WGet information on which player?%w");
            return;
            endif
            if (targ != 0)
            pronoun = $utils:capitalize(#0.(targ.gender)[2]);
            player:tell("%WAvailable Information:");
            player:tell("----------------------");
            player:tell("%gName    : %G" + name);
            player:tell("%gSpecies : %G" + $utils:capitalize(targ.species.generic_name));
            player:tell("%gGender  : %G" + targ.gender);
            design = parent(targ) in {$dm, $coder, $architect};
            if (design)
            title = {"a Dungeon Master", "a Coder", "an Architect"}[design];
            player:tell(((("%W" + pronoun) + " is ") + title) + ".");
            endif
            if (targ in $admins)
            player:tell(("%Y" + pronoun) + " is an Administrator.");
            endif
            if (targ in connected_players())
            "Connected;  show idle time.";
            player:tell((("%y" + pronoun) + " has been idle for ") + $utils:dhms_str($utils:dhms(idle_seconds(targ))));
            if (targ.afk)
            "AFK.";
            player:tell(("%B" + pronoun) + " is currently Away From Keyboard.");
            endif
            else
            "Not connected.";
            time = (targ.last_connected == "never") ? " has never been connected." | ((" was last connected on " + targ.last_connected) + ".");
            player:tell(("%c" + pronoun) + time);
            endif
            player:tell("%W----------------------%w");
            else
            player:tell("%WYou know of no such player.%w");
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>raise_hp</NAME>
          <CODE>
            "$animate:raise_hp( int ) this none this";
            "raises $animates hit points by int, no higher than :max_hp()";
            {hps} = args;
            if (this.consciousness == "dead")
            return 0;
            else
            newhp = this.cur_hp + hps;
            maxhp = this:max_hp();
            this.cur_hp = (newhp &gt; maxhp) ? maxhp | newhp;
            return this.cur_hp;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>lower_hp</NAME>
          <CODE>
            "$animate:lower_hp( int ) this none this";
            "lowers $animates hit points by int, no lower than -10";
            {hps} = args;
            "this animate is already dead...";
            if (this.cur_hp == -10)
            this:tell("You enemies continue to attack your dead corpse!");
            else
            newhp = this.cur_hp - hps;
            this.cur_hp = (newhp &lt; -10) ? -10 | newhp;
            if ((this.cur_hp &lt; 1) &amp;&amp; (this.cur_hp &gt; -10))
            viewers = this.location:get_animates();
            viewers = setremove(viewers, this);
            for each in (viewers)
            each:sees(3, {this:known_to(each)[2] + " falls to the ground, unconscious."});
            endfor
            this:tell("You fall to the ground, unconscious.");
            this.consciousness = "unconscious";
            this.combat_stance = "passive";
            this.position = "lying";
            "stop people from auto attacking";
            for each in (this.targets)
            each.targets = setremove(each.targets, this);
            endfor
            this.targets = {};
            "stop unconscious guy from attempting to attack anymore";
            this.location.combatants = setremove(this.location.combatants, this);
            elseif (this.cur_hp == -10)
            viewers = this.location:get_animates();
            viewers = setremove(viewers, this);
            for each in (viewers)
            each:sees(3, {this:known_to(each)[2] + " has BEEN KILLED!!!"});
            endfor
            this:tell("You have BEEN KILLED!!!");
            this.consciousness = "dead";
            this.combat_stance = "passive";
            this.position = "lying";
            "stop people from auto attacking";
            for each in (this.targets)
            each.targets = setremove(each.targets, this);
            endfor
            this.targets = {};
            "stop dead guy from attempting to attack anymore";
            this.location.combatants = setremove(this.location.combatants, this);
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>hit</NAME>
          <CODE>
            "$animate:hit() this none this";
            "selects a wielded weapon, makes hit roll,";
            " if success, makes dam roll, sends messages.";
            {target} = args;
            hit_success = 0;
            critical_hit = 0;
            critical_hit_str = $combat.hit_color;
            skill_thac0_bonus = 0;
            skill_dam_bonus = 0;
            "set up weapon info";
            weapon = this:get_weapon();
            if (weapon == 0)
            weapon_max_dam = this.species.max_dam;
            weapon_min_dam = this.species.min_dam;
            weapon_skill_type = "none";
            weapon_generic_name = "fist";
            weapon_thac0 = 0;
            else
            weapon_max_dam = weapon.max_dam;
            weapon_min_dam = weapon.min_dam;
            weapon_skill_type = weapon.skill_type;
            weapon_generic_name = weapon.generic_name;
            weapon_thac0 = weapon.thac0;
            endif
            hit_roll = random(20);
            "a roll of 1 always misses";
            if (hit_roll == 1)
            hit_success = 0;
            elseif (hit_roll == 20)
            hit_success = 1;
            critical_hit = 1;
            else
            mod_roll = (((hit_roll + target:ac()) + weapon_thac0) + skill_thac0_bonus) + $dex_thac0_table[this:dex()];
            if (mod_roll &gt;= $combat.base_thac0)
            hit_success = 1;
            endif
            endif
            if (loc = weapon_skill_type in this.skills)
            skill_thac0_bonus = this.skills[loc + 1] / 2;
            skill_dam_bonus = this.skills[loc + 1];
            endif
            if (hit_success)
            "you hit!";
            "calc damage";
            dam_var = (weapon_max_dam - weapon_min_dam) + 1;
            dam = (((random(dam_var) + weapon_min_dam) - 1) + skill_dam_bonus) + $str_dam_table[this:str()];
            if (critical_hit)
            dam = (dam * 3) / 2;
            critical_hit_str = $combat.crit_color + "Critical Hit!  ";
            endif
            this:tell(((((critical_hit_str + "You hit ") + target:known_to(this)[2]) + " (") + tostr(dam)) + ").%w");
            target:tell((((((((critical_hit_str + this:known_to(target)[2]) + " hits you with ") + #0.(this.gender)[5]) + " ") + weapon_generic_name) + " (") + tostr(dam)) + ").%w");
            viewers = this.location:get_animates();
            viewers = setremove(viewers, target);
            viewers = setremove(viewers, this);
            for each in (viewers)
            each:sees(3, {((((((this:known_to(each)[2] + " hits ") + target:known_to(each)[2]) + " with ") + #0.(this.gender)[5]) + " ") + weapon_generic_name) + ".%w"});
            endfor
            "dish out the damage";
            target:damage("dorking", dam);
            else
            "you missed :(";
            this:tell((($combat.miss_color + "You miss ") + target:known_to(this)[2]) + ".%w");
            target:tell(((((($combat.miss_color + this:known_to(target)[2]) + " misses you with ") + #0.(this.gender)[5]) + " ") + weapon_generic_name) + ".%w");
            viewers = this.location:get_animates();
            viewers = setremove(viewers, target);
            viewers = setremove(viewers, this);
            for each in (viewers)
            each:sees(3, {((((((this:known_to(each)[2] + " misses ") + target:known_to(each)[2]) + " with ") + #0.(this.gender)[5]) + " ") + weapon_generic_name) + ".%w"});
            endfor
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>emote</NAME>
          <CODE>
            if (argstr)
            this:_emote(argstr);
            else
            this:tell("Emote what?");
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>get_target</NAME>
          <CODE>
            "$animate:get_target() this none this";
            "returns a random target from targets list";
            num_targs = length(this.targets);
            if (num_targs)
            return this.targets[random(num_targs)];
            else
            return 0;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>spd</NAME>
          <CODE>
            "$animate:spd() this none this";
            "returns the total spd, which includes base plus any modifiers";
            return this.base_spd;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>init_roll</NAME>
          <CODE>
            "$animate:init_roll( weapon ) this none this";
            "to make this unconfusing, we will ADD everything";
            "1-6 plus dex_init, plus position, effects (sneak, etc.)";
            "plus spd_init, endurance, mobility, PLUS weapon speed factor";
            {weapon} = args;
            spd_init = $spd_init_table[this:spd()];
            dex_init = $dex_init_table[this:dex()];
            if (weapon == 0)
            weapon_spd = 0;
            else
            weapon_spd = weapon.speed_factor;
            endif
            if (this.position == "standing")
            pos = 0;
            elseif (this.position == "kneeling")
            pos = 1;
            elseif (this.position == "sitting")
            pos = 2;
            elseif (this.position == "lying")
            pos = 4;
            endif
            mobility = this:mobility();
            if (mobility == "mobile")
            mob = 0;
            elseif (mobility == "encumbered")
            mob = 2;
            elseif (mobility == "burdened")
            mob = 4;
            elseif (mobility == "immobile")
            mob = 6;
            endif
            init_roll = ((((random(6) + spd_init) + dex_init) + pos) + mob) + weapon_spd;
            return init_roll;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_attack</NAME>
          <CODE>
            "$animate:_attack( target ) this none this";
            {target} = args;
            if (target == this)
            this:tell("Suicide option not enabled.");
            elseif (target in this.targets)
            this:tell(("You are already fighting with " + target:known_to(this)[2]) + ".");
            else
            this.targets = setadd(this.targets, target);
            target.targets = setadd(target.targets, this);
            this.location.combatants = setadd(this.location.combatants, this);
            this.location.combatants = setadd(this.location.combatants, target);
            "start the fight";
            if (!this.location.combat_pid)
            fork pid (2)
            $combat:battle(this.location);
            endfork
            this.location.combat_pid = pid;
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>show_eq*uipment</NAME>
          <CODE>
            "$animate:show_eq*uipment() this none this";
            {?target = this} = args;
            for x in (this.species.max_worn)
            if (typeof(x) == STR)
            for item in (this.worn)
            if (item.where == x)
            target:tell($utils:padr(("  %C&lt;" + x) + "&gt;%W", 20, " ") + item.name);
            endif
            endfor
            endif
            endfor
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>show_inv*entory</NAME>
          <CODE>
            "$animate:show_inv*entory() this none this";
            {?target = this} = args;
            weapons = {};
            items = {};
            for xobj in (this.held)
            if (xobj in this.wielded)
            weapons = {@weapons, xobj};
            else
            items = {@items, xobj};
            endif
            endfor
            for weapon in (weapons)
            target:tell(("%W  " + weapon.name) + "%R  &lt;wielded&gt;%w");
            endfor
            for item in (items)
            target:tell("%W  " + item.name);
            endfor
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>max_endurance</NAME>
          <CODE>
            "#3:max_endurance() this none this";
            base = this.base_endurance;
            max_end = (base + ((base * $str_end_table[this:str()]) / 100)) + ((base * $con_end_table[this:con()]) / 100);
            return max_end;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>max_focus</NAME>
          <CODE>
            return this.base_focus;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>damage</NAME>
          <CODE>
            "$animate:damage() this none this";
            {type, quantity} = args;
            this:lower_hp(quantity);
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>lower_endurance</NAME>
          <CODE>
            "$animate:lower_endurance( int ) this none this";
            "lowers $animates endurance points by int, no lower than 0";
            {points} = args;
            newend = this.cur_endurance - points;
            this.cur_endurance = (newend &lt; 0) ? 0 | newend;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>cast</NAME>
          <CODE>
            "$animate:cast() any any any";
            spellname = dobjstr;
            prep = prepstr;
            targetname = iobjstr;
            can_cast = 0;
            highest_path = "";
            path_val = 0;
            high_path_val = 0;
            if (player.consciousness != "awake")
            player:tell("You must be awake to cast!");
            return 0;
            elseif (spellname == "")
            this:tell("Cast what spell?");
            return 0;
            elseif (prep != "")
            if ((targetname == "") || (!is_member(prep, {"on", "at"})))
            this:tell("Syntax:  cast &lt;spellname&gt; [at | on &lt;target&gt;]");
            return 0;
            endif
            endif
            "match spell name";
            spell = $utils:match(spellname, children($spell));
            "match target in room";
            if (targetname != "")
            target = this:match(targetname, this.location.contents);
            else
            target = {#-1};
            endif
            "spell uniquely matched";
            if (length(spell) == 1)
            "target uniquely matched or no target specified";
            if (length(target) == 1)
            "can this cast the spell?";
            for each in (this.paths)
            if (typeof(each) == OBJ)
            path_val = this:path_value(each);
            if ((spell[1] in each.common_spells) &amp;&amp; (path_val &gt; 0))
            can_cast = 1;
            path_val = this:path_value(each);
            if (path_val &gt; high_path_val)
            high_path_val = path_val;
            highest_path = each;
            endif
            endif
            endif
            endfor
            "cast the spell, subtract costs";
            if (can_cast)
            end_cost = spell[1].endurance_cost;
            net_end_cost = end_cost - ((end_cost * (high_path_val * 8)) / 100);
            if (this.cur_endurance &lt; net_end_cost)
            this:tell("You do not have enough endurance to cast that spell.");
            else
            foc_cost = spell[1].focus_cost;
            net_foc_cost = foc_cost - ((foc_cost * (high_path_val * 8)) / 100);
            if (this.cur_focus &lt; net_foc_cost)
            this:tell("You do not have enough focus to cast that spell.");
            else
            "lower endurance";
            this:lower_endurance(net_end_cost);
            "lower focus";
            this:lower_focus(net_foc_cost);
            result = spell[1]:invoke(this, target[1]);
            if (result != 0)
            if (result[1] == 0)
            this:tell(result[2]);
            endif
            endif
            endif
            endif
            else
            this:tell("You cannot cast that spell.");
            endif
            "ambiguous target";
            elseif (length(target) &gt; 1)
            this:tell(((("Cast " + spell[1].generic_name) + " ") + prep) + " which?");
            for each in (target)
            this:tell("  " + each.name);
            endfor
            "no target matched";
            elseif (length(target) == 0)
            this:tell(("There is no %W" + targetname) + "%w here.");
            endif
            elseif (length(spell) &gt; 1)
            this:tell("Cast which spell?");
            for each in (spell)
            this:tell("  " + each.generic_name);
            endfor
            elseif (length(spell) == 0)
            this:tell("You cannot cast that SPELL.");
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>set_disconnect_info</NAME>
          <CODE>
            "$animate:set_disconnect_info this none this";
            "set $max_connected if applicable";
            curlen = length(connected_players());
            if (curlen &gt;= $max_connected[1])
            $max_connected = {curlen, time()};
            endif
            "set player's last connect time and set afk to 0.";
            this.last_connected = $utils:ftime(ctime());
            this.afk = 0;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>path_value</NAME>
          <CODE>
            "$animate:path_value( OBJ ) this none this";
            "returns the path value for path OBJ";
            {path_name} = args;
            loc = path_name in this.paths;
            if (loc == 0)
            return 0;
            else
            value = this.paths[loc + 1];
            return value;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>lower_focus</NAME>
          <CODE>
            "$animate:lower_focus( int ) this none this";
            "lowers $animates focus points by int, no lower than 0";
            {points} = args;
            newfoc = this.cur_focus - points;
            this.cur_focus = (newfoc &lt; 0) ? 0 | newfoc;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>known_to</NAME>
          <CODE>
            "$animate:known_to this none this";
            "Dungeon Masters, Game Designers (archs, coders), Admins, and self are known to everyone.";
            "Everyone is known to Admins.";
            targ = args[1];
            bool = 0;
            always = {@$architect:descendants(), @$admins};
            if (valid(targ))
            if (((this in always) || (targ in $admins)) || (targ == this))
            bool = 1;
            name = this.name;
            else
            "Check known_players.";
            x = this in targ.known_players;
            if (x)
            bool = 1;
            name = targ.known_players[x + 1];
            endif
            endif
            endif
            if (bool == 0)
            prep = this.species.gprep;
            spec = " " + this.species.adj;
            gend = " " + #0.(this.gender)[1];
            name = (prep + spec) + gend;
            endif
            answer = {bool, name};
            return answer;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>admins</NAME>
          <CODE>
            "$animate:admins any any any";
            cp = connected_players();
            conn = {};
            ncon = {};
            cnames = {};
            nnames = {};
            for x in ($admins)
            if (x in cp)
            conn = {@conn, x};
            cnames = {@cnames, x.name};
            else
            ncon = {@ncon, x};
            nnames = {@nnames, x.name};
            endif
            endfor
            names = {@cnames, @nnames};
            idle = {};
            for y in (conn)
            idle = {@idle, idle_seconds(y)};
            endfor
            oidle = $utils:sort(idle);
            pairs = {};
            for z in (oidle)
            pairs = {@pairs, {cnames[z in idle], z}};
            endfor
            pad = $utils:longest(names);
            player:tell("");
            if (!conn)
            player:tell("%YThere are no administrators currently connected.");
            else
            player:tell("%YCurrently Connected Administrators");
            player:tell("----------------------------------%y");
            for x in (pairs)
            name = $utils:padr(x[1], pad, " ");
            itime = $utils:dhms_str($utils:dhms(x[2]));
            player:tell((name + "  %W=&gt;%y  idle ") + itime);
            endfor
            endif
            if (ncon)
            player:tell("");
            player:tell("%YNot Connected");
            player:tell("-------------%c");
            for y in (ncon)
            player:tell(y.name);
            endfor
            endif
            player:tell("%w");
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_emote</NAME>
          <CODE>
            "$animate:_emote this none this";
            text = args[1];
            if (text[1] in {" ", "'", ":", "!", "?", ",", "."})
            space = "";
            else
            space = " ";
            endif
            viewers = this.location:get_animates();
            for each in (viewers)
            name = $utils:capitalize(this:known_to(each)[2]);
            each:sees(3, {(name + space) + text});
            endfor
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>raise_endurance</NAME>
          <CODE>
            "$animate:raise_endurance( int ) this none this";
            "raises $animates endurance points by int, no higher than :max_end()";
            {end} = args;
            if (this.consciousness == "dead")
            return 0;
            else
            newend = this.cur_endurance + end;
            maxend = this:max_endurance();
            this.cur_endurance = (newend &gt; maxend) ? maxend | newend;
            return this.cur_endurance;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>raise_focus</NAME>
          <CODE>
            "$animate:raise_focus( int ) this none this";
            "raises $animates focus points by int, no higher than :max_focus()";
            {foc} = args;
            if (this.consciousness == "dead")
            return 0;
            else
            newfoc = this.cur_focus + foc;
            maxfoc = this:max_focus();
            this.cur_focus = (newfoc &gt; maxfoc) ? maxfoc | newfoc;
            return this.cur_focus;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>sp*eak</NAME>
          <CODE>
            "$animate:sp*eak any any any";
            known = this.known_languages;
            cur = this.current_language;
            others = setremove(known, cur);
            if (!args)
            this:tell(("%WYou are currently speaking " + cur.name) + ".");
            if (others)
            names = {};
            for x in (others)
            names = {@names, x.name};
            endfor
            this:tell(("%yYou also know " + $utils:list_to_string(names, ", ", "and")) + ".%w");
            endif
            else
            outcome = this:_speak(args[1]);
            this:tell(outcome[2]);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_speak</NAME>
          <CODE>
            "$animate:_speak this none this";
            langstr = args[1];
            known = this.known_languages;
            matchlist = $utils:match(langstr, known);
            if (!matchlist)
            msg = "%WYou know no such language.%w";
            result = 0;
            else
            if (length(matchlist) &gt; 1)
            names = {};
            for x in (matchlist)
            names = {@names, x.name};
            endfor
            msg = ("Which language are you referring to?  " + $utils:list_to_string(names, ", ", "or")) + "?";
            result = 0;
            else
            this.current_language = matchlist[1];
            msg = ("%GYou are now speaking " + this.current_language.name) + ".%w";
            result = 1;
            endif
            endif
            return {result, msg};
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>match</NAME>
          <CODE>
            "#3:match(str, objlist) - returns a list of objs from args[2] that";
            "are known to this or aliased to args[1]. if no match, returns empty list.";
            {token, objlist} = args;
            "here and me";
            if (token == "here")
            return {this.location};
            elseif (token == "me")
            return {this};
            else
            count = 0;
            count_and_item = $utils:parse_dot_ref(token);
            if (count_and_item)
            {count, item} = count_and_item;
            endif
            if (count &gt; 0)
            token = item;
            endif
            matchlist = {};
            for each in (objlist)
            if (!(each in matchlist))
            doesmatch = 0;
            names = {each:known_to(this)[2], @each.aliases};
            for name in (names)
            doesmatch = doesmatch || (index(name, token) == 1);
            endfor
            if (doesmatch)
            matchlist = {@matchlist, each};
            endif
            endif
            endfor
            if (count == 0)
            return matchlist;
            elseif (count &lt;= length(matchlist))
            return {matchlist[count]};
            else
            return {};
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>get_weapon</NAME>
          <CODE>
            "#3:get_weapon() this none this - returns a random wield weapon on this";
            "if no wielded weapon, then returns 0";
            weapons = {};
            for each in (this.wielded)
            if (each:is_a($weapon))
            weapons = {@weapons, each};
            endif
            endfor
            num_weapons = length(weapons);
            if (num_weapons == 0)
            return 0;
            else
            return weapons[random(num_weapons)];
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>go</NAME>
          <CODE>
            "$animate:go ( list ) this none this";
            "list of strs matching direction to move in";
            {dirlist} = args;
            if (this.consciousness != "awake")
            this:tell("You cannot move...you are ", this.consciousness, "!");
            else
            dir = this.location:match_exit(dirlist[1]);
            if (valid(dir))
            if (this in this.location.combatants)
            this:tell("You are engaged in battle!  Use the %Wflee%w command to escape.");
            elseif (this.cur_endurance == 0)
            this:tell("You are too exhausted to move any further!");
            else
            cur_loc = this.location;
            dir:invoke(this);
            for each in (this.form_members)
            if (each.location == cur_loc)
            dir:invoke(each);
            endif
            endfor
            if (length(dirlist) &gt; 1)
            dirlist = dirlist[2..$];
            fork (1)
            this:go(dirlist);
            endfork
            endif
            endif
            elseif (dir == $failed_match)
            this:tell("You can't go that way.");
            else
            this:tell("I don't know which direction `", dir, "' you mean.");
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_get</NAME>
          <CODE>
            "$animate:_get(dobj, iobj)";
            " e.g. first arg is object that you are getting, second arg is where you are getting it from.";
            {target, targ_loc} = args;
            retval = target:move_to(this);
            if (retval[1] == 1)
            this:tell(((("You get " + target.name) + " from ") + targ_loc.name) + ".");
            else
            this:tell(retval[2]);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_put</NAME>
          <CODE>
            "$animate:_put(dobj, iobj)";
            " e.g. first arg is object that you are putting, second arg is where you are putting it";
            {target, targ_dest} = args;
            retval = target:move_to(targ_dest);
            if (retval[1] == 1)
            this.held = setremove(this.held, target);
            this:_unwield(target);
            this:tell(((("You put " + target.name) + " into ") + targ_dest.name) + ".");
            else
            this:tell(retval[2]);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>height_str</NAME>
          <CODE>
            "$animate_class:height_str this none this";
            height_str = ((tostr(this.height / 12) + "' ") + tostr(this.height % 12)) + "\"";
            return height_str;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>form</NAME>
          <CODE>
            "$animate:form any any any";
            "form &lt;charname&gt; [&lt;position&gt;] - puts char in a formation with animate.";
            "form - lists form members.";
            {?target = "", ?position = "1"} = args;
            if (target == "")
            if (player.leader == 0)
            player:tell("You are not currently a member of a formation.");
            else
            player:tell("%YMembers of your formation:");
            player:tell("  %W", player.leader:known_to(player)[2], " %W(leader)");
            for each in (player.leader.form_members)
            player:tell("  ", each:known_to(player)[2]);
            endfor
            endif
            "check to see if your leader is yourself, or if you have no leader.";
            "if you have no leader, then you are not a member of a form, and can add members.";
            "if you are your own leader, then you are the leader of a form, and can add members.";
            elseif ((player.leader != player) &amp;&amp; (player.leader != 0))
            player:tell("You are not the leader of your formation, and can't add new members.");
            else
            "target is specified, you are the leader or formless";
            "max form size is six";
            if (length(player.form_members) == 5)
            player:tell("Your formation already has six members.  You can't add any more.");
            else
            targslist = player:match(target, player.location:get_animates());
            if (length(targslist) &gt; 1)
            player:tell_ambiguous(target, targslist);
            elseif (length(targslist) == 0)
            player:tell("There is no player named ", target, " here.");
            elseif (is_player(targslist[1]))
            "target is a valid player in this room known by player";
            new_member = targslist[1];
            "if you are trying to form yourself";
            if (new_member == player)
            player:tell("You can't add yourself to your formation!  You are already in it!");
            "new_member is already in a formation";
            elseif (new_member.leader != 0)
            player:tell("That player is already a member of a formation.");
            "any more objections?";
            "if new member is not currently connected, they cant join.";
            elseif (!(new_member in connected_players()))
            player:tell("That player is currently disconnected, and can't join your formation.");
            else
            "ask the new member if they want to join.";
            new_member:tell(player:known_to(new_member)[2], " has asked you to join ", #0.(player.gender)[5], " formation.  Would you like to join? (yes/NO)");
            player:tell("You ask ", new_member:known_to(player)[2], " to join your formation.");
            answer = read(new_member);
            if ((length(answer) &gt; 0) &amp;&amp; ((answer[1] == "y") || (answer == "yes")))
            "add to formation";
            player:_form(new_member);
            else
            player:tell(new_member:known_to(player)[2], " refused your offer to join your formation.");
            endif
            endif
            else
            player:tell("That item is not a player!  You can't add it to your formation.");
            endif
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>tell_ambiguous</NAME>
          <CODE>
            "$animate:tell ambiguous this none this";
            "takes a str and a list of objects, prints out the known_to strings for each obj";
            "with numbers for dot matching";
            {objstr, objlist} = args;
            x = 1;
            this:tell(("Which %W" + objstr) + "%w do you mean?");
            for each in (objlist)
            this:tell((tostr(x) + ":  ") + objlist[x]:known_to(this)[2]);
            x = x + 1;
            endfor
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_unform</NAME>
          <CODE>
            "$animate:_unform() this none this";
            "allows you to unform a player programmatically, like during a disconnect or whatever.";
            if (this != this.leader)
            this.leader.form_members = setremove(this.leader.form_members, this);
            "check to see if this is the last guy out of the party";
            if (length(this.leader.form_members) == 0)
            this.leader.leader = 0;
            endif
            this:tell("You are no longer a member of ", this.leader:known_to(this)[2], "'s formation.");
            this.leader:tell(this:known_to(this.leader)[2], " has left your formation!  Traitor!");
            for each in (this.leader.form_members)
            each:tell(this:known_to(each)[2], " has left the formation!");
            endfor
            this.leader = 0;
            elseif (this == this.leader)
            "disband the formation";
            for each in (this.form_members)
            each:_unform();
            endfor
            this.leader = 0;
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
          <NAME>unform</NAME>
          <CODE>
            "$animate:unform any any any";
            "unform &lt;charname&gt; - if leader, removes &lt;charname&gt; from form.";
            "unform - removes you from current formation.";
            "unform all - if leader, disbands the group.";
            {?target = ""} = args;
            if (target == "")
            "you have no leader";
            if (player.leader == 0)
            player:tell("You are not a member of a formation.");
            elseif (player.leader == player)
            player:tell("Unform who?");
            elseif (player.leader != player)
            player:_unform();
            endif
            elseif (target == "all")
            player:_unform();
            player:tell("You disband the entire party!");
            else
            who = player:match(target, player.form_members);
            if (length(who) &gt; 1)
            player:tell_ambiguous("target", who);
            elseif (length(who) == 0)
            player:tell("There is no ", target, " in your formation.");
            else
            who[1]:_unform();
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_form</NAME>
          <CODE>
            "$animate:_form this none this";
            "allows you to programmatically add members to someone's formation";
            "leader:form(new_member)";
            {new_member} = args;
            this.form_members = {@this.form_members, new_member};
            this.leader = this;
            new_member.leader = this;
            new_member:tell("You are now a member of ", this:known_to(new_member)[2], "'s formation.");
            this:tell(new_member:known_to(this)[2], " is now a member of your formation.");
            for each in (this.form_members)
            each:tell(new_member:known_to(each)[2], " has joined the formation!");
            endfor
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>open</NAME>
          <CODE>
            "$animate:open any any any";
            if (!args)
            this:tell("%cOpen what?%w");
            else
            this:_open(@args);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_open</NAME>
          <CODE>
            "$animate:_open this none this";
            "Use animate's match function so that known_to works.";
            stuff = {@this.location.exits, @this.location.contents, @this.contents};
            targ = this:match(args[1], stuff);
            if (targ == {})
            this:tell("%cThere is no such item here.%w");
            elseif (length(targ) &gt; 1)
            this:tell_ambiguous(tostr(args[1]), targ);
            else
            "Ok, single match.  Now find out if it's an exit or door.";
            "Containers will be in here too.";
            what = targ[1];
            if (what:is_a($container))
            this:tell("%cContainers can't be opened yet.%w");
            elseif (!what:is_a($exit))
            this:tell("%cYou cannot open that.%w");
            else
            if (!what.door)
            this:tell("%cThis exit has no door.%w");
            else
            "Ok, it's a door.";
            door = what;
            if (door.open)
            this:tell("%cThe door is already open.%w");
            else
            "Is it functional?";
            if (!door.functional)
            msg = door.func_msg ? door.func_msg | "This door is not functional.";
            this:tell(("%c" + msg) + "%w");
            else
            "Is it locked?";
            if (door.locked)
            msg = door.locked_msg ? door.locked_msg | "It's locked.";
            this:tell(("%c" + msg) + "%w");
            else
            "Ok, send messages and open the door.";
            msg = door.open_msg ? door.open_msg | "You open the door.";
            this:tell(("%c" + msg) + "%w");
            group = setremove(this.location:get_animates(), this);
            for x in (group)
            name = this:known_to(x)[2];
            codes = {"%name", "%pro"};
            values = {name, #0.(this.gender)[2]};
            gmsg = door.open_announce ? door.open_announce | (name + " opens the door.");
            for y in [1..length(codes)]
            new = strsub(gmsg, codes[y], values[y], 1);
            gmsg = new;
            endfor
            x:tell(("%c" + gmsg) + "%w");
            endfor
            door:_open();
            endif
            endif
            endif
            endif
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>close</NAME>
          <CODE>
            "$animate:close any any any";
            if (!args)
            this:tell("%cClose what?%w");
            else
            this:_close(@args);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_close</NAME>
          <CODE>
            "$animate:_close this none this";
            "Use animate's match function so that known_to works.";
            stuff = {@this.location.exits, @this.location.contents, @this.contents};
            targ = this:match(args[1], stuff);
            if (targ == {})
            this:tell("%cThere is no such item here.%w");
            elseif (length(targ) &gt; 1)
            this:tell_ambiguous(tostr(args[1]), targ);
            else
            "Ok, single match.  Now find out if it's an exit or door.";
            "Containers will be in here too.";
            what = targ[1];
            if (what:is_a($container))
            this:tell("%cContainers can't be closed yet.%w");
            elseif (!what:is_a($exit))
            this:tell("%cYou cannot close that.%w");
            else
            if (!what.door)
            this:tell("%cThis exit has no door.%w");
            else
            "Ok, it's a door.";
            door = what;
            if (!door.open)
            this:tell("%cThe door is already closed.%w");
            else
            "Is it functional?";
            if (!door.functional)
            msg = door.func_msg ? door.func_msg | "This door is not functional.";
            this:tell(("%c" + msg) + "%w");
            else
            "Ok, send messages and close the door.";
            msg = door.close_msg ? door.close_msg | "You close the door.";
            this:tell(("%c" + msg) + "%w");
            group = setremove(this.location:get_animates(), this);
            for x in (group)
            name = this:known_to(x)[2];
            codes = {"%name", "%pro"};
            values = {name, #0.(this.gender)[2]};
            gmsg = door.close_announce ? door.close_announce | (name + " closes the door.");
            for y in [1..length(codes)]
            new = strsub(gmsg, codes[y], values[y], 1);
            gmsg = new;
            endfor
            x:tell(("%c" + gmsg) + "%w");
            endfor
            door:_close();
            endif
            endif
            endif
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>lock</NAME>
          <CODE>
            "$animate:lock any any any";
            if (!args)
            this:tell("%cLock what?%w");
            else
            this:_lock(@args);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_lock</NAME>
          <CODE>
            "$animate:_lock this none this";
            "Use animate's match function so that known_to works.";
            stuff = {@this.location.exits, @this.location.contents, @this.contents};
            targ = this:match(args[1], stuff);
            if (targ == {})
            this:tell("%cThere is no such item here.%w");
            elseif (length(targ) &gt; 1)
            this:tell_ambiguous(tostr(args[1]), targ);
            else
            "Ok, single match.  Now find out if it's an exit or door.";
            "Containers will be in here too.";
            what = targ[1];
            if (what:is_a($container))
            this:tell("%cContainers can't be locked yet.%w");
            elseif (!what:is_a($exit))
            this:tell("%cYou cannot lock that.%w");
            else
            if (!what.door)
            this:tell("%cThis exit has no door.%w");
            else
            "Ok, it's a door.";
            door = what;
            "Is it functional?";
            if (!door.functional)
            msg = door.func_msg ? door.func_msg | "This door is not functional.";
            this:tell(("%c" + msg) + "%w");
            else
            "Is it open?";
            if (door.open)
            this:tell("%cYou have to close it first.%w");
            else
            "Can it be locked at all?";
            if (!door.lockable)
            this:tell("This door has no lock.");
            else
            "Is it already locked?";
            if (door.locked)
            this:tell("%cIt's already locked.%w");
            else
            "Does the animate have the right key?";
            if (!(door.key in this.contents))
            this:tell("You don't have the right key.");
            else
            "Ok, send messages and lock the door.";
            msg = door.lock_msg ? door.lock_msg | "You lock the door.";
            this:tell(("%c" + msg) + "%w");
            group = setremove(this.location:get_animates(), this);
            for x in (group)
            name = this:known_to(x)[2];
            codes = {"%name", "%pro"};
            values = {name, #0.(this.gender)[2]};
            gmsg = door.lock_announce ? door.lock_announce | (name + " locks the door.");
            for y in [1..length(codes)]
            new = strsub(gmsg, codes[y], values[y], 1);
            gmsg = new;
            endfor
            x:tell(("%c" + gmsg) + "%w");
            endfor
            door:_lock();
            endif
            endif
            endif
            endif
            endif
            endif
            endif
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
          <NAME>unlock</NAME>
          <CODE>
            "$animate:unlock any any any";
            if (!args)
            this:tell("%cUnlock what?%w");
            else
            this:_unlock(@args);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_unlock</NAME>
          <CODE>
            "$animate:_unlock this none this";
            "Use animate's match function so that known_to works.";
            stuff = {@this.location.exits, @this.location.contents, @this.contents};
            targ = this:match(args[1], stuff);
            if (targ == {})
            this:tell("%cThere is no such item here.%w");
            elseif (length(targ) &gt; 1)
            this:tell_ambiguous(tostr(args[1]), targ);
            else
            "Ok, single match.  Now find out if it's an exit or door.";
            "Containers will be in here too.";
            what = targ[1];
            if (what:is_a($container))
            this:tell("%cContainers can't be unlocked yet.%w");
            elseif (!what:is_a($exit))
            this:tell("%cYou cannot unlock that.%w");
            else
            if (!what.door)
            this:tell("%cThis exit has no door.%w");
            else
            "Ok, it's a door.";
            door = what;
            "Is it functional?";
            if (!door.functional)
            msg = door.func_msg ? door.func_msg | "This door is not functional.";
            this:tell(("%c" + msg) + "%w");
            else
            "Is it open?";
            if (door.open)
            this:tell("%cThe door is already open.%w");
            else
            "Can it be locked at all?";
            if (!door.lockable)
            this:tell("This door has no lock.");
            else
            "Is it already unlocked?";
            if (!door.locked)
            this:tell("%cIt's not locked.%w");
            else
            "Does the animate have the right key?";
            if (!(door.key in this.contents))
            this:tell("You don't have the right key.");
            else
            "Ok, send messages and unlock the door.";
            msg = door.unlock_msg ? door.unlock_msg | "You unlock the door.";
            this:tell(("%c" + msg) + "%w");
            group = setremove(this.location:get_animates(), this);
            for x in (group)
            name = this:known_to(x)[2];
            codes = {"%name", "%pro"};
            values = {name, #0.(this.gender)[2]};
            gmsg = door.unlock_announce ? door.unlock_announce | (name + " unlocks the door.");
            for y in [1..length(codes)]
            new = strsub(gmsg, codes[y], values[y], 1);
            gmsg = new;
            endfor
            x:tell(("%c" + gmsg) + "%w");
            endfor
            door:_unlock();
            endif
            endif
            endif
            endif
            endif
            endif
            endif
            endif
          </CODE>
        </VERB>
        <OBJECT ID="obj6" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
          <NAME>Player Class</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>prompt_on</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>color</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_hear</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_see</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_smell</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>prompt_string</NAME>
            <VALUE>"%g%n: %B[%dhp%hp%B/%c%HP%B][%df%f%B/%c%F%B][%de%e%B/%c%E%B]%w "</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_hp</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>cur_hp</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>password</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>messages</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_feel</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_taste</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>known_languages</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>current_language</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gender</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>afk</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_str</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_int</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_hea</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_spd</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_cnc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>held</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>help_db</NAME>
            <VALUE>#28</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>wielded</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>worn</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>species</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>height</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>current_channels</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>position</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>consciousness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_ac</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>skills</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_dex</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_con</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_stance</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>known_players</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>targets</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>last_connected</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_init</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_weapon</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_endurance</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>cur_endurance</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_focus</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>cur_focus</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>current_spell</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>paths</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>prompt_colors</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>finished</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>full_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>total_points</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>form_members</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>leader</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>start_location</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
            <NAME>north south east west up down n s e w u d</NAME>
            <CODE>
              "$player:north south east west up down";
              exit = this.location:match_exit(verb);
              if (length(args) &gt; 0)
              dirs = {verb, @args};
              else
              dirs = {verb};
              endif
              if (this.consciousness != "awake")
              this:tell("You cannot move...you are ", this.consciousness, "!");
              else
              if (valid(exit))
              this:go(dirs);
              elseif (exit == $failed_match)
              player:tell("You can't go that way.");
              else
              player:tell("I don't know which direction `", verb, "' you mean.");
              endif
              endif
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
            <NAME>passwd password</NAME>
            <CODE>
              "#6:passwd any none none";
              targetstr = argstr;
              if (targetstr != "")
              if (player:is_a($dm) &amp;&amp; (player.wizard == 1))
              targetnum = $utils:match(targetstr, players(), 1, 1);
              if (targetnum != {})
              target = targetnum[1];
              player:tell("~New password:");
              newpwd = read(player, 0);
              player:tell("~Retype new password:");
              renewpwd = read(player, 0);
              if (newpwd == renewpwd)
              if (length(newpwd) &gt;= 7)
              target.password = crypt(newpwd);
              player:tell(("Password for %W" + target.name) + "%w changed.");
              else
              player:tell("Password too short.  Not changed.");
              endif
              else
              player:tell("Passwords do not match.");
              endif
              else
              player:tell(("Player %W" + targetstr) + "%w does not exist.");
              endif
              else
              player:tell("Syntax: passwd &lt;cr&gt;");
              endif
              else
              this:tell("~Old password:");
              oldpwd = read(player, 0);
              auth = crypt(oldpwd, player.password[1..2]) == player.password;
              if (auth)
              player:tell("~New password:");
              newpwd = read(player, 0);
              player:tell("~Retype new password:");
              renewpwd = read(player, 0);
              if (newpwd == renewpwd)
              if (length(newpwd) &gt;= 7)
              player.password = crypt(newpwd);
              player:tell(("Password for %W" + player.name) + "%w changed.");
              else
              player:tell("Password too short.  Not changed.");
              endif
              else
              player:tell("Passwords do not match.");
              endif
              else
              player:tell("Password change failed.  Failures are logged for security.");
              endif
              endif
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
            <NAME>l*ook</NAME>
            <CODE>
              "$player:look(any any any)";
              "$player:north south east west up down";
              if (this.consciousness == "unconscious")
              this:tell("You see nothing but a dull red glow.  You are unconscious.");
              elseif (this.consciousness == "dead")
              this:tell("You see a bright white light glowing at the end of a long, dark tunnel.");
              elseif (this.consciousness == "asleep")
              this:tell("You see crazy stuff that we can generate with a dream generator.  That would be fun. And we can pull it from random text strings pulled from stuff that the player saw that day.");
              elseif (length(args) == 0)
              player.location:describe_to(player);
              elseif (prepstr == "")
              "parse dobjstr, do a describe to on it";
              target = dobjstr;
              "build list of candidates to which to match";
              items = player.location.contents;
              matches = player:match(target, items);
              if (matches == {})
              player:tell(("There is no %W" + dobjstr) + "%w here.");
              "multiple matches";
              elseif (length(matches) &gt; 1)
              player:tell_ambiguous(dobjstr, matches);
              "unique match";
              else
              targobj = matches[1];
              targobj:describe_to(player, 2);
              endif
              elseif (prepstr == "on")
              "parse dobjstr and iobjstr, do a describe on it";
              target = dobjstr;
              loc = iobjstr;
              elseif (prepstr == "in")
              "parse dobjstr and iobjstr, do a describe on it";
              target = dobjstr;
              loc = iobjstr;
              items = {@player.contents, @player.location.contents};
              locobj = player:match(loc, items);
              if (locobj == {})
              player:tell(("There is no %W" + loc) + "%w here.");
              elseif (target == "")
              locobj[1]:describe_to(player, 2);
              else
              items = locobj[1].contents;
              matches = player:match(target, items);
              if (matches == {})
              player:tell(((("There is no %W" + target) + "%w in ") + locobj[1].name) + ".");
              else
              targobj = matches[1];
              targobj:describe_to(player, 1);
              endif
              endif
              else
              player:tell("Syntax:  look [in | on] object");
              player:tell("Example:  look in sack");
              "syntax message";
              endif
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
            <NAME>who_string</NAME>
            <CODE>
              "$player:who_string() this none this";
              viewer = args[1];
              gender = {"N", "B", "F", "M"}[this.gender in {"neither", "both", "female", "male"}];
              species = this.species.who_str;
              "Check if this player is known to viewer.";
              known = this:known_to(viewer);
              if (known[1])
              name = known[2];
              pad = 16;
              else
              name = $who.unknown;
              pad = 18;
              endif
              "afk";
              if (this.afk)
              afk = $who.afk + "  ";
              else
              afk = "       ";
              endif
              "editing";
              if (this.location:is_a($editor))
              edit = $who.editing + "  ";
              else
              edit = "           ";
              endif
              "idle";
              idle = idle_seconds(this);
              if (idle &gt; 3600)
              idle = $who.dormant + "  ";
              elseif (idle &gt; 1800)
              idle = $who.vegetating + "  ";
              elseif (idle &gt;= 600)
              idle = $who.idle + "  ";
              else
              idle = "        ";
              endif
              "admin";
              if (this in $admins)
              admin = $who.admin;
              else
              admin = "";
              endif
              name_string = $utils:padr(name, pad, " ");
              who_string = (((((((((("%G[" + "%g") + species) + "  ") + gender) + "%G] ") + name_string) + afk) + edit) + idle) + admin) + "%w";
              return who_string;
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
            <NAME>kn*own</NAME>
            <CODE>
              "$player:kn*own() any any any";
              if (player in $admins)
              player:tell("%WAll players are already known to you.  But here's the output anyway:%w");
              endif
              if (player.known_players)
              names = {};
              objs = {};
              for x in (player.known_players)
              if (typeof(x) == 2)
              names = {@names, x};
              else
              objs = {@objs, x};
              endif
              endfor
              pad = $utils:longest(names) + 4;
              player:tell("");
              player:tell("%yKnown Players:");
              player:tell("%W--------------");
              for x in [1..length(objs)]
              name = "%y" + names[x];
              namestr = $utils:padr(name, pad, " ");
              spec = objs[x].species.adj + " ";
              gend = #0.(objs[x].gender)[1];
              if (spec[1] == "e")
              prep = "%yAn ";
              else
              prep = "%yA ";
              endif
              player:tell(((((namestr + "%W=&gt;   ") + prep) + spec) + gend) + ".%w");
              endfor
              player:tell("");
              else
              player:tell("%WYou do not know any players.%w");
              endif
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
            <NAME>ren*ame</NAME>
            <CODE>
              "$player:ren*ame any any any";
              newname = 0;
              if (!args)
              player:tell("%WRename which player?%w");
              else
              target = $utils:capitalize(args[1]);
              known = player.known_players;
              inlist = target in known;
              if (!inlist)
              player:tell("%WYou don't know any player by that name.%w");
              else
              alen = length(target);
              newstr = argstr[alen + 2..$];
              if (!newstr)
              player:tell(("%WRename " + target) + " to what?%w");
              else
              if (argstr[alen + 2..alen + 3] == "to")
              if (length(argstr) == (alen + 3))
              player:tell(("%WRename " + target) + " to what?%w");
              else
              newname = newstr[4..$];
              endif
              else
              newname = newstr;
              endif
              endif
              endif
              endif
              if (newname)
              newname = $utils:capitalize(newname);
              "Determine if there are disallowed spaces or characters in the name.";
              if ((index(newname, " ") || index(newname, "#")) || index(newname, "%"))
              player:tell("%WNames cannot contain spaces, pound signs, or percent signs.%w");
              else
              "Determine if the new name is too long.";
              if (length(newname) &gt; 20)
              player:tell("%WThat name is too long.%w");
              else
              "Determine if there is already a player with that name.";
              if (newname in known)
              player:tell(("%WYou already know a player with the name " + newname) + ".%w");
              else
              oldname = known[inlist];
              player.known_players[inlist] = newname;
              player:tell(((("%c" + oldname) + " is now known as ") + newname) + ".%w");
              endif
              endif
              endif
              endif
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
            <NAME>intro*duce</NAME>
            <CODE>
              "$player:intro*duce any any any";
              name = player.name;
              group = setremove(player.location.contents, player);
              gend = #0.(player.gender)[6];
              lang = player.current_language;
              if (args)
              targmatch = $utils:match(args[1], player.location.contents);
              if (!targmatch)
              player:tell("%WThere is no such player here.%w");
              else
              if (length(targmatch) &gt; 1)
              player:tell("%WMultiple matches, please be more specific.%w");
              else
              target = targmatch[1];
              subgroup = setremove(group, target);
              if (target == player)
              for x in (group)
              pname = $utils:capitalize(player:known_to(x)[2]);
              okmsg = ((((pname + " introduces ") + gend) + "... to ") + gend) + ".";
              nomsg = ((((pname + " is talking to ") + gend) + " in ") + lang.name) + " again...";
              x:hears(3, {okmsg}, lang, {nomsg});
              endfor
              player:tell("You introduce yourself.. to yourself.");
              else
              "Send messages to audience in room.";
              for x in (subgroup)
              pname = $utils:capitalize(player:known_to(x)[2]);
              tname = target:known_to(x)[2];
              okmsg = ((((pname + " introduces ") + gend) + " to ") + tname) + ".";
              nomsg = ((((pname + " says something to ") + tname) + " in ") + lang.name) + ".";
              x:hears(3, {okmsg}, lang, {nomsg});
              endfor
              "Send message to designated target.";
              pname = $utils:capitalize(player:known_to(target)[2]);
              targokmsg = ((((pname + " introduces ") + gend) + " to you as '") + name) + "'.";
              targnomsg = ((pname + " says something to you in ") + lang.name) + ".";
              target:hears(3, {targokmsg}, lang, {targnomsg});
              "Send message to player.";
              tname = target:known_to(player)[2];
              pmsg = ((("You introduce yourself as '" + name) + "' to ") + tname) + ".";
              player:tell(pmsg);
              endif
              endif
              endif
              else
              for x in (group)
              pname = $utils:capitalize(player:known_to(x)[2]);
              okmsg = ((((pname + " introduces ") + gend) + " to the room as '") + name) + "'.";
              nomsg = ((pname + " says something in ") + lang.name) + ".";
              x:hears(3, {okmsg}, lang, {nomsg});
              endfor
              "Send message to player.";
              pmsg = ("You introduce yourself to the room as '" + name) + "'.";
              player:tell(pmsg);
              endif
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
            <NAME>name call</NAME>
            <CODE>
              "$player:call/name any any any";
              if (player in $admins)
              player:tell("%WAdmins see all players' real names.  But here's the output anyway:%w");
              player:tell("");
              endif
              verbstr = $utils:capitalize(verb);
              if (!args)
              player:tell(("%W" + verbstr) + " who what?%w");
              else
              targmatch = this:match(args[1], player.location.contents);
              if (!targmatch)
              player:tell("%WThere is no such player here.%w");
              else
              if (length(targmatch) &gt; 1)
              player:tell("%WMultiple matches, please be more specific.%w");
              else
              target = targmatch[1];
              "Game designers and admins are not included in known_players.";
              nope = {@$architect:descendants(), @$admins};
              if (target in nope)
              player:tell("%WGame designers and administrators are always known by their real names.%w");
              elseif (target == player)
              player:tell("%WHaving an identity crisis?%w");
              else
              gend = #0.(target.gender)[3];
              if (length(argstr) == length(args[1]))
              player:tell(((("%W" + verbstr) + " ") + gend) + " what?%w");
              else
              "Now we have TARGET and NAME.";
              name = tostr(args[2]);
              oldname = $utils:capitalize(target:known_to(player)[2]);
              known = player.known_players;
              "Determine if NAME is already in known_players.";
              nref = name in known;
              if (nref)
              if (name == known[nref])
              player:tell(("%WYou already know " + gend) + " by that name.%w");
              else
              len = length(name);
              inc = 1;
              inuse = name;
              while (name in known)
              name = name[1..len] + tostr(inc);
              inc = inc + 1;
              endwhile
              name = $utils:capitalize(name);
              player.known_players[nref] = name;
              player:tell(((("%WThe name " + inuse) + " was already in use, so ") + name) + " has been used instead.");
              player:tell("To change this value, use the rename command.");
              player:tell(((oldname + " is now known as ") + name) + ".%w");
              endif
              else
              name = $utils:capitalize(name);
              player.known_players = listappend(player.known_players, target);
              player.known_players = listappend(player.known_players, name);
              player:tell(((("%W" + oldname) + " is now known as ") + name) + ".");
              endif
              endif
              endif
              endif
              endif
              endif
            </CODE>
          </VERB>
          <OBJECT ID="obj8" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
            <NAME>Architect Class</NAME>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>owned_objects</NAME>
              <VALUE>{}</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>editing_prop</NAME>
              <VALUE>""</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>editing_obj</NAME>
              <VALUE>#-1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>editing_loc</NAME>
              <VALUE>#-1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>insert_point</NAME>
              <VALUE>0</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_on</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>color</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hear</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_see</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_smell</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_string</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hp</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_hp</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>password</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>messages</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_feel</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_taste</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>known_languages</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_language</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gender</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>afk</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_str</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_int</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hea</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_spd</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_cnc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>held</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>help_db</NAME>
              <VALUE>#30</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>wielded</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>worn</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>species</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>height</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_channels</NAME>
              <VALUE>{"design"}</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>position</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>consciousness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_ac</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>skills</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_dex</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_con</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_stance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>known_players</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>targets</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>last_connected</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_init</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_weapon</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_endurance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_endurance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_focus</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_focus</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_spell</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>paths</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_colors</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>finished</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>full_name</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>total_points</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>form_members</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>leader</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>start_location</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>description</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>aliases</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>home</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>short_desc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>core</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>handedness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_enc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_weight</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>capacity</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_fit</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>pprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>generic_name</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>age</NAME>
            </PROPERTY>
            <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
              <NAME>props</NAME>
              <CODE>
                "$architect:props any none none";
                {?target = ""} = args;
                if (length(target) == 0)
                player:tell("Display properties for what object?");
                else
                result = player:match(target);
                if (result == {})
                player:tell(("%W" + target) + "%w is not a valid object reference.");
                elseif (length(result) &gt; 1)
                x = 1;
                player:tell(("Which %W" + target) + "%w do you mean?");
                for each in (result)
                player:tell(((((tostr(x) + ":  ") + each.name) + " (") + tostr(each)) + ")");
                x = x + 1;
                endfor
                else
                target = result[1];
                proplist = $utils:sort(target:properties());
                player:tell("%WProperties on ", target.name, " (", tostr(target), "):");
                player:tell("%gFundamental Object Attributes:");
                player:tell("  Is Player --&gt; ", is_player(target));
                player:tell("  Parent --&gt; ", parent(target));
                player:tell("  Children --&gt; ", toliteral(children(target)));
                player:tell("%GBuiltin Properties:");
                player:tell("  Owner --&gt; ", target.owner);
                player:tell("  Location --&gt; ", target.location);
                player:tell("  Contents --&gt; ", toliteral(target.contents));
                player:tell("  Programmer --&gt; ", target.programmer);
                player:tell("  Wizard --&gt; ", target.wizard);
                player:tell("  rwf --&gt; ", target.r, target.w, target.f);
                player:tell("%wAdditional Properties:");
                for prop in (proplist)
                defined_on = target;
                while (!(prop in properties(defined_on)))
                defined_on = parent(defined_on);
                endwhile
                value = toliteral(target.(prop));
                if (length(value) &gt; 80)
                value = "[too long; use EVAL to display.]";
                endif
                player:tell_raw("  ", prop, " (", tostr(defined_on), ") --&gt; ", value);
                endfor
                endif
                endif
              </CODE>
            </VERB>
            <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
              <NAME>edit</NAME>
              <CODE>
                "parse args[1] for obj and prop, if list of strings, send arch to editor";
                if (player.location == $editor)
                player:tell("You are already in the Editor!");
                elseif (length(args) != 1)
                player:tell("%Gsyntax: %Wedit objnum.propname");
                else
                obj_and_prop = $utils:parse_prop_ref(args[1]);
                if (obj_and_prop == 0)
                player:tell("%Gsyntax: %Wedit objnum.propname");
                else
                objref = obj_and_prop[1];
                propref = obj_and_prop[2];
                targobj = toobj(objref);
                "must use objnum, not name reference";
                if ((objref[1] != "#") || ((objref != "#0") &amp;&amp; (targobj == #0)))
                player:tell("%Gsyntax: %Wedit objnum.propname");
                elseif (!valid(targobj))
                player:tell("Object %W", objref, "%w does not exist.");
                elseif (!targobj:has_prop(propref))
                player:tell(targobj.name, " does not have a property named %W", propref, "%w.");
                "check to see if propref is a list of strings";
                elseif (typeof(targobj.(propref)) != LIST)
                player:tell("You can only edit properties that are of type LIST and that only contain strings.");
                else
                for each in (targobj.(propref))
                if (typeof(each) != STR)
                player:tell("You can only edit properties that are of type LIST and that only contain strings.");
                return 0;
                endif
                endfor
                "propref is list of strings, engage editing mode";
                player:tell("You are being %Wtransported%w to the editor, and are now editing %W", args[1], "%w.");
                player.editing_prop = propref;
                player.editing_obj = targobj;
                player.editing_loc = player.location;
                player.insert_point = 1;
                player:move_to($editor);
                endif
                endif
                endif
              </CODE>
            </VERB>
            <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
              <NAME>des*ign</NAME>
              <CODE>
                "$architect:design any any any";
                if (player in $architect:descendants())
                if (!("design" in player.current_channels))
                player:tell("%WYour channel has been turned on.%w");
                player.current_channels = setadd(player.current_channels, "design");
                endif
                for designer in ($channels.design_channel)
                if ("design" in designer.current_channels)
                designer:tell();
                designer:tell((((($channels.design_prefix + " ") + player.name) + ": ") + argstr) + "%w");
                endif
                endfor
                else
                player:tell($bad_command);
                endif
              </CODE>
            </VERB>
            <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
              <NAME>who_string</NAME>
              <CODE>
                "$architect:who_string() this none this";
                viewer = args[1];
                gender = {"N", "B", "F", "M"}[this.gender in {"neither", "both", "female", "male"}];
                "afk";
                if (this.afk)
                afk = $who.afk + "  ";
                else
                afk = "       ";
                endif
                "editing";
                if (this.location:is_a($editor))
                edit = $who.editing + "  ";
                else
                edit = "           ";
                endif
                "idle";
                idle = idle_seconds(this);
                if (idle &gt; 3600)
                idle = $who.dormant + "  ";
                elseif (idle &gt; 1800)
                idle = $who.vegetating + "  ";
                elseif (idle &gt;= 600)
                idle = $who.idle + "  ";
                else
                idle = "        ";
                endif
                "admin";
                if (this in $admins)
                admin = $who.admin;
                else
                admin = "";
                endif
                name_string = $utils:padr(this.name, 16, " ");
                who_string = ((((((("%Y[%yArch " + gender) + "%Y] ") + name_string) + afk) + edit) + idle) + admin) + "%w";
                return who_string;
              </CODE>
            </VERB>
            <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
              <NAME>sa*y</NAME>
              <CODE>
                "$architect:say any any any";
                if (player.location == $editor)
                article = {};
                old_article = player.editing_obj.(player.editing_prop);
                for x in [1..player.insert_point - 1]
                article = {@article, old_article[x]};
                endfor
                article = {@article, argstr};
                for x in [player.insert_point..length(old_article)]
                article = {@article, old_article[x]};
                endfor
                player.editing_obj.(player.editing_prop) = article;
                player:tell("Line added.");
                player.insert_point = player.insert_point + 1;
                else
                pass(@args);
                endif
              </CODE>
            </VERB>
            <OBJECT ID="obj9" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
              <NAME>Coder Class</NAME>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>owned_objects</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>editing_prop</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>editing_obj</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>editing_loc</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>insert_point</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>prompt_on</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>color</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_hear</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_see</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_smell</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>prompt_string</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_hp</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>cur_hp</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>password</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>messages</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_feel</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_taste</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>known_languages</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>current_language</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>gender</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>afk</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_str</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_int</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_hea</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_spd</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_cnc</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>held</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>help_db</NAME>
                <VALUE>#29</VALUE>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>wielded</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>worn</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>species</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>height</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>current_channels</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>position</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>consciousness</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_ac</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>skills</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_dex</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_con</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>combat_stance</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>known_players</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>targets</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>last_connected</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>combat_init</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>combat_weapon</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_endurance</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>cur_endurance</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_focus</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>cur_focus</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>current_spell</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>paths</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>prompt_colors</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>finished</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>full_name</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>total_points</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>form_members</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>leader</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>start_location</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>description</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>aliases</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>home</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>short_desc</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>core</NAME>
                <VALUE>1</VALUE>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>handedness</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_enc</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_weight</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>capacity</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>max_fit</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>pprep</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>gprep</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>generic_name</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>age</NAME>
              </PROPERTY>
              <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                <NAME>rmp*rop</NAME>
                <CODE>
                  " #9:rmp*rop(STR) any any any";
                  "";
                  " args[1]:  Only argument this function takes is a string consisting ";
                  "           of OBJ.STR which refers to a prop (STR) on the OBJ. ";
                  "";
                  " Returns:  0 (command-line verb) ";
                  "";
                  " Modifies:  Removes a property from an object (and all its ";
                  "            descendants. ";
                  "";
                  " Owner:  $dm ";
                  " Writer:  Finder(#4) ";
                  " Perms:  owner ";
                  " Called by:  command-line function usable by DMs and Coders ";
                  " Screen Outputs:  message ";
                  "";
                  " Description:  Performs various permissions checks, then ";
                  "               determines whether or not the specified property ";
                  "               exists and can be removed (i.e., it exists on the ";
                  "               specified OBJ and not on a parent), then removes ";
                  "               the property permanently. ";
                  "";
                  " NOTE:  As of today, string matching has not been completed so ";
                  "        the object can only be referenced via its OBJ  number. ";
                  "";
                  " Examples:  rmprop #4.spoon ";
                  "            rmprop me.spoon   &lt;=  Can't be done yet (see NOTE) ";
                  "";
                  init_string = argstr;
                  person = player;
                  "";
                  syntax = "SYNTAX:  &lt;object_name/object_number&gt;.&lt;new_prop_name&gt;";
                  example1 = "For example:  rmprop #233.flight_path";
                  example2 = "For example:  rmprop bird.flight_path";
                  "";
                  " This :tell() is provided for formatting purposes only. :-) ";
                  person:tell();
                  if (!args)
                  person:tell(syntax);
                  person:tell(example1);
                  " Add this back in once string matching has been coded. ";
                  "person:tell(example2);";
                  return 0;
                  else
                  " Ok, going to call $utils:parse_prop_ref here...  If the object ";
                  " string it returns can't be changed to an OBJ, just return SYNTAX.  ";
                  " String matching has not been coded yet. ";
                  if (!(obj_and_prop = $utils:parse_prop_ref(init_string)))
                  person:tell(syntax);
                  person:tell(example1);
                  else
                  target = obj_and_prop[1];
                  property = obj_and_prop[2];
                  if (target[1] != "#")
                  " No string matching yet. ";
                  person:tell("String matching has not been coded yet.  Please use an object number.");
                  person:tell(example1);
                  return 0;
                  else
                  object = toobj(target);
                  if (!valid(object))
                  " The object is not a valid object number. ";
                  person:tell("That is not a valid object.");
                  else
                  " Make sure the property exists at all. ";
                  if (!object:has_prop(property))
                  person:tell("There is no '", property, "' property on ", object, ".");
                  return 0;
                  else
                  " Make sure the property is on this specific object and not ";
                  " on an ancestor.  Since we already made sure the prop can ";
                  " be referenced by the specified OBJ an E_PROPNF must mean ";
                  " that the prop is defined above the OBJ.  All other errors ";
                  " will be parsed and returned to the player. ";
                  try
                  delete_property(object, property);
                  person:tell("Property removed.");
                  except (E_PROPNF)
                  person:tell("That property is defined on an ancestor of ", object.name, ".");
                  person:tell("At a later date there will be a function designed to test for this.");
                  except any_error (ANY)
                  person:tell("The built-in function delete_property returned the following error:");
                  person:tell(any_error[2]);
                  endtry
                  endif
                  endif
                  endif
                  endif
                  endif
                </CODE>
              </VERB>
              <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
                <NAME>verbs</NAME>
                <CODE>
                  "#9:verbs any none none";
                  {?target = ""} = args;
                  targobj = toobj(target);
                  if (length(target) == 0)
                  player:tell("Display verbs for what object?");
                  elseif ((!valid(targobj)) || ((targobj == #0) &amp;&amp; ((target != "#0") &amp;&amp; (target != "0"))))
                  player:tell(("%W" + target) + "%w is not a valid object reference.");
                  else
                  if (valid(targobj))
                  verblist = #20:sort(verbs(targobj));
                  player:tell("Verbs defined on ", targobj.name, " (", targobj, ")");
                  for verb in (verblist)
                  verbinfo = verb_info(targobj, is_member(verb, verbs(targobj)));
                  numlines = length(verb_code(targobj, is_member(verb, verbs(targobj))));
                  verbargs = verb_args(targobj, is_member(verb, verbs(targobj)));
                  player:tell("~  ", verb, " (", verbargs[1], " ", verbargs[2], " ", verbargs[3]);
                  player:tell("~", ")  Owned by ", verbinfo[1], ".  (", verbinfo[2]);
                  player:tell(")   ", numlines, " lines of code.");
                  endfor
                  else
                  player:tell(targobj, "is not a valid object number");
                  return;
                  endif
                  endif
                </CODE>
              </VERB>
              <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                <NAME>addverb</NAME>
                <CODE>
                  "#9:addv*erb objnum:verbname arg1 arg2 arg3";
                  " Returns:  0 (command-line verb) ";
                  " Modifies:  Adds a verb to the specified objnum. ";
                  " Owner:  $dm ";
                  " Writer:  Ixion (#5) ";
                  " Called by:  command-line function usable by DMs and Coders ";
                  " Screen outputs:  message ";
                  {?init_string, ?value_one = $nothing, ?value_two = $nothing, ?value_three = $nothing} = args;
                  person = player;
                  target = verb = "";
                  "copied from addprop and modified";
                  syntax = "SYNTAX:  addverb &lt;object_name/object_number&gt;:&lt;new_verb_name&gt; args1 args2 args3";
                  example1 = "For example:  addverb #556:wiggle any none none";
                  example2 = "For example:  addverb ferret:wiggle any none none";
                  "";
                  " The following :tell() is for formatting purposes only. ";
                  person:tell();
                  if (!args)
                  person:tell(syntax);
                  person:tell(example1);
                  " Add this back in once string matching has been coded. ";
                  "person:tell(example2);";
                  return 0;
                  else
                  " Ok, going to call $utils:parse_verb_ref here...  If the object ";
                  " string it returns can't be changed to an OBJ, just return SYNTAX.  ";
                  " String matching has not been coded yet. ";
                  if (!(obj_and_verb = $utils:parse_verb_ref(init_string)))
                  person:tell(syntax);
                  person:tell(example1);
                  else
                  target = obj_and_verb[1];
                  verb = obj_and_verb[2];
                  if (target[1] != "#")
                  " No string matching yet. ";
                  person:tell();
                  person:tell("String matching has not been coded yet.  Please use an object number.");
                  person:tell(example1);
                  return 0;
                  else
                  object = toobj(target);
                  if (!valid(object))
                  " The object is not a valid object number. ";
                  person:tell("That is not a valid object.");
                  else
                  " Make sure the verb does not already exist. ";
                  if (object == object:has_verb(verb))
                  person:tell("That verb already exists: ", object, ":", verb, ".");
                  return 0;
                  else
                  "add the verb with specified args";
                  if ((value_one &amp;&amp; value_two) &amp;&amp; value_three)
                  if (((value_one == "this") &amp;&amp; (value_two == "none")) &amp;&amp; (value_three == "this"))
                  perms = "rwxd";
                  else
                  perms = "rwd";
                  endif
                  owner = #10;
                  try
                  add_verb(object, {owner, perms, verb}, {value_one, value_two, value_three});
                  person:tell(tostr("Verb added: ", object, "(", object.name, "):", verb));
                  person:tell("Don't forget to change perms on this verb if necessary.");
                  except e (ANY)
                  " Parse the error and return it. ";
                  person:tell("The built-in function add_verb returned the following error: ");
                  person:tell(e[2]);
                  person:tell("Verb not added");
                  endtry
                  endif
                  endif
                  endif
                  endif
                  endif
                  endif
                </CODE>
              </VERB>
              <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                <NAME>grep</NAME>
                <CODE>
                  "search verb code for occurrences of args[1].  no regexp";
                  {pattern} = args;
                  searchlist = {};
                  allobjs = #20:sort({#1, @#1:descendants()});
                  for each in (allobjs)
                  if (verbs(each) != {})
                  searchlist = {@searchlist, each};
                  endif
                  endfor
                  for each in (searchlist)
                  verblist = verbs(each);
                  for verbitem in (verblist)
                  verbcode = verb_code(each, is_member(verbitem, verblist));
                  linenum = 0;
                  for line in (verbcode)
                  linenum = linenum + 1;
                  pos = index(line, pattern);
                  if (pos &gt; 0)
                  player:tell_raw(tostr(each), ":", verbitem, "() - Line ", tostr(linenum), " - ", line);
                  endif
                  endfor
                  endfor
                  endfor
                </CODE>
              </VERB>
              <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                <NAME>show*verb</NAME>
                <CODE>
                  " #9:show*verb any none none";
                  "takes one or two arguments: a verb ref, and optionally the letter 'l' to show linenums";
                  {?verb_ref = "", ?showlines = ""} = args;
                  if (verb_ref == "")
                  player:tell("Show which verb?");
                  else
                  parsed = $utils:parse_verb_ref(verb_ref);
                  if (parsed == 0)
                  player:tell(("%W" + verb_ref) + "%w is not a valid verb reference.");
                  else
                  object = toobj(parsed[1]);
                  verb = parsed[2];
                  if (!valid(object))
                  player:tell(("%W" + tostr(object)) + "%w is not a valid object reference.");
                  else
                  result = object:has_verb(verb);
                  if (result == 0)
                  player:tell(((("%W" + verb) + "%w is not defined on %W") + object.name) + "%w.");
                  elseif (result != object)
                  player:tell(((((("%W" + verb) + "%w is defined on ") + object.name) + "'s ancestor, %W") + result.name) + "%w.");
                  elseif (!showlines)
                  player:tell_raw(verb_code(object, verb));
                  else
                  x = 1;
                  verbcode = verb_code(object, verb);
                  for each in (verbcode)
                  player:tell_raw((tostr(x) + ":  ") + each);
                  x = x + 1;
                  endfor
                  endif
                  endif
                  endif
                  endif
                </CODE>
              </VERB>
              <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                <NAME>tree</NAME>
                <CODE>
                  " #10:tree ([OBJ], [STR all]) ";
                  "";
                  " args[1]:  Optional.  The OBJ whose descendants you wish to view. ";
                  "           Default value is the System Object (#0). ";
                  "";
                  " args[2]:  The string option 'all' displays every one of the OBJ's ";
                  "           descendants whether fertile or not.  Without this option ";
                  "           only fertile descendants are displayed. ";
                  "";
                  " Returns:  0 (command-line verb) ";
                  " Modifies:  none ";
                  " Owner:  $dm ";
                  " Writer:  Ixion(#5) ";
                  " Perms:  owner ";
                  " Called-by:  Command-line function callable by DMs and Coders. ";
                  " Screen Outputs:  A visual tree displaying the OBJ's descendants. ";
                  "";
                  " Description:  Displays a visual tree that lists out the target OBJ's ";
                  "               descendants.  If the 'all' argument is used, every ";
                  "               descendant is listed, even those that are not fertile. ";
                  "";
                  " Examples:  tree          =&gt;  Displays all fertile descendants of #0. ";
                  "            tree #18      =&gt;  Displays all fertile descendants of #18. ";
                  "            tree #18 all  =&gt;  Displays all fertile and non-fertile ";
                  "                              descendants of #18. ";
                  "";
                  if (length(args) == 0)
                  ancestor = #1;
                  all = "";
                  else
                  ancestor = toobj(args[1]);
                  all = "";
                  endif
                  if (length(args) == 2)
                  all = args[2];
                  elseif (length(args) &gt; 2)
                  player:tell("Too many arguments.");
                  player:tell("Syntax:  tree object [all]");
                  return;
                  endif
                  if (((ancestor != #0) || (args[1] == "0")) || (args[1] == "#0"))
                  if (all == "")
                  ancestor:tree(1, 0);
                  elseif (all == "all")
                  ancestor:tree(1, 1);
                  else
                  player:tell(("Unknown argument " + all) + ".  Valid second arguments are: [all]");
                  player:tell("Syntax:  tree object [all]");
                  endif
                  else
                  player:tell("First argument should be a valid object number.");
                  player:tell("Syntax:  tree object [all]");
                  endif
                </CODE>
              </VERB>
              <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                <NAME>eval</NAME>
                <CODE>
                  answer = eval(("return " + argstr) + ";");
                  if (answer[1])
                  notify(player, tostr("=&gt; ", toliteral(answer[2])));
                  else
                  for line in (answer[2])
                  notify(player, line);
                  endfor
                  endif
                </CODE>
              </VERB>
              <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
                <NAME>who_string</NAME>
                <CODE>
                  "$coder:who_string() this none this";
                  viewer = args[1];
                  gender = {"N", "B", "F", "M"}[this.gender in {"neither", "both", "female", "male"}];
                  "afk";
                  if (this.afk)
                  afk = $who.afk + "  ";
                  else
                  afk = "       ";
                  endif
                  "editing";
                  if (this.location:is_a($editor))
                  edit = $who.editing + "  ";
                  else
                  edit = "           ";
                  endif
                  "idle";
                  idle = idle_seconds(this);
                  if (idle &gt; 3600)
                  idle = $who.dormant + "  ";
                  elseif (idle &gt; 1800)
                  idle = $who.vegetating + "  ";
                  elseif (idle &gt;= 600)
                  idle = $who.idle + "  ";
                  else
                  idle = "        ";
                  endif
                  "admin";
                  if (this in $admins)
                  admin = $who.admin;
                  else
                  admin = "";
                  endif
                  name_string = $utils:padr(this.name, 16, " ");
                  who_string = ((((((("%Y[%yCode " + gender) + "%Y] ") + name_string) + afk) + edit) + idle) + admin) + "%w";
                  return who_string;
                </CODE>
              </VERB>
              <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                <NAME>args</NAME>
                <CODE>
                  "$coder:args any any any";
                  "sets the args on obj:verb to specified args";
                  if (length(args) == 1)
                  {objverb} = args;
                  objandverb = $utils:parse_verb_ref(objverb);
                  if (objandverb == 0)
                  player:tell("syntax: obj:verb [ dobj prep iobj ]");
                  else
                  objargs = verb_args(toobj(objandverb[1]), objandverb[2]);
                  player:tell(objandverb[1], ":", objandverb[2], " ", objargs[1], " ", objargs[2], " ", objargs[3]);
                  endif
                  elseif (length(args) != 4)
                  player:tell("syntax: obj:verb dobj prep iobj");
                  else
                  {objverb, dobjarg, preparg, iobjarg} = args;
                  objandverb = $utils:parse_verb_ref(objverb);
                  if (objandverb == 0)
                  player:tell("syntax: obj:verb [ dobj prep iobj ]");
                  else
                  set_verb_args(toobj(objandverb[1]), objandverb[2], {dobjarg, preparg, iobjarg});
                  player:tell("Verb arguments changed.");
                  endif
                  endif
                </CODE>
              </VERB>
              <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                <NAME>which</NAME>
                <CODE>
                  "$coder:which any none none";
                  "returns a list of objects that have matching verbs and/or props";
                  token = argstr;
                  if (token == "")
                  player:tell("What verb or property would you like to search for?");
                  else
                  allobjs = $utils:sort({#1, @#1:descendants()});
                  "verbs that match";
                  for each in (allobjs)
                  matched_verbs = {};
                  xverbs = verbs(each);
                  for xverb in (xverbs)
                  if (index(xverb, token) == 1)
                  matched_verbs = {@matched_verbs, xverb};
                  endif
                  endfor
                  if (matched_verbs != {})
                  player:tell(((each.name + " (") + tostr(each)) + ")");
                  for mverb in (matched_verbs)
                  player:tell("  :" + mverb);
                  endfor
                  endif
                  endfor
                  "props that match";
                  for each in (allobjs)
                  matched_props = {};
                  xprops = properties(each);
                  for xprop in (xprops)
                  if (index(xprop, token) == 1)
                  matched_props = {@matched_props, xprop};
                  endif
                  endfor
                  if (matched_props != {})
                  player:tell(((each.name + " (") + tostr(each)) + ")");
                  for mprop in (matched_props)
                  player:tell("  ." + mprop);
                  endfor
                  endif
                  endfor
                  endif
                </CODE>
              </VERB>
              <OBJECT ID="obj10" FLAGS="f wizard programmer player" OWNER="obj10" LOCATION="obj61">
                <NAME>DM Class</NAME>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>show_obj_nums</NAME>
                  <VALUE>1</VALUE>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>owned_objects</NAME>
                  <VALUE>{#3, #16, #18, #26, #27, #28, #29, #30, #31, #32, #33, #34, #35, #36, #37, #38, #39, #40, #41, #42, #43, #44, #45, #46, #47, #48, #49, #50, #51, #52, #53, #54, #55, #56, #58, #61, #64, #65, #66, #67, #68, #69, #70, #71, #73, #74, #76, #77, #78, #79, #80, #81, #82, #84, #85, #86, #87, #89, #90, #91, #0, #1, #2, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13, #14, #15, #19, #20, #21}</VALUE>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>editing_prop</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>editing_obj</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>editing_loc</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>insert_point</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>prompt_on</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>color</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_hear</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_see</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_smell</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>prompt_string</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_hp</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>cur_hp</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>password</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>messages</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_feel</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_taste</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>known_languages</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>current_language</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>gender</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>afk</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_str</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_int</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_hea</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_spd</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_cnc</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>held</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>help_db</NAME>
                  <VALUE>#31</VALUE>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>wielded</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>worn</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>species</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>height</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>current_channels</NAME>
                  <VALUE>{"admin", "design", "dm"}</VALUE>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>position</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>consciousness</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_ac</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>skills</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_dex</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_con</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>combat_stance</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>known_players</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>targets</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>last_connected</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>combat_init</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>combat_weapon</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_endurance</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>cur_endurance</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_focus</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>cur_focus</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>current_spell</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>paths</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>prompt_colors</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>finished</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>full_name</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>total_points</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>form_members</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>leader</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>start_location</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>description</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>aliases</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>home</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>short_desc</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>core</NAME>
                  <VALUE>1</VALUE>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>handedness</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_enc</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>base_weight</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>capacity</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>max_fit</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>pprep</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>gprep</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>generic_name</NAME>
                </PROPERTY>
                <PROPERTY OWNER="obj10" PERMS="w r">
                  <NAME>age</NAME>
                </PROPERTY>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                  <NAME>addp*rop</NAME>
                  <CODE>
                    {?init_string, ?value_one = $nothing, ?value_two = $nothing} = args;
                    person = player;
                    target = property = "";
                    "";
                    syntax = "SYNTAX:  &lt;object_name/object_number&gt;.&lt;new_prop_name&gt; [[=] &lt;value&gt;]";
                    example1 = "For example:  addprop #556.rank = 35";
                    example2 = "For example:  addprop here.rank";
                    "";
                    " The following :tell() is for formatting purposes only. ";
                    person:tell();
                    if (!args)
                    person:tell(syntax);
                    person:tell(example1);
                    " Add this back in once string matching has been coded. ";
                    "person:tell(example2);";
                    return 0;
                    else
                    " Ok, going to call $utils:parse_prop_ref here...  If the object ";
                    " string it returns can't be changed to an OBJ, just return SYNTAX.  ";
                    " String matching has not been coded yet. ";
                    if (!(obj_and_prop = $utils:parse_prop_ref(init_string)))
                    person:tell(syntax);
                    person:tell(example1);
                    else
                    target = obj_and_prop[1];
                    property = obj_and_prop[2];
                    if (target[1] != "#")
                    " No string matching yet. ";
                    person:tell();
                    person:tell("String matching has not been coded yet.  Please use an object number.");
                    person:tell(example1);
                    return 0;
                    else
                    object = toobj(target);
                    if (!valid(object))
                    " The object is not a valid object number. ";
                    person:tell("That is not a valid object.");
                    else
                    " Make sure the property does not already exist. ";
                    if (object:has_prop(property))
                    person:tell("That property already exists: ", object, ".", property, " = ", toliteral(object.(property)));
                    return 0;
                    else
                    " All syntax checks ok.  Determine if an initial value was given. ";
                    " Actually, no.  I'm tired of coding this function.  Let them eat cake. ";
                    if (value_one)
                    person:tell("Default values not enabled yet.  Sorry!");
                    person:tell();
                    endif
                    value = 0;
                    perms = "rw";
                    owner = $dm;
                    " The following code is taken from LambdaMOO $programmer:@property with minor adjustments. ";
                    try
                    add_property(object, property, value, {owner, perms});
                    person:tell(tostr("Property added: ", object, "(", object.name, ").", property, " = ", toliteral(object.(property))));
                    except (E_INVARG)
                    " Property exists on a descendant. ";
                    person:tell("Property is already defined on one or more descendants.");
                    person:tell("Someday in the technologically-advanced future there will be a utility to check for this.");
                    except e (ANY)
                    " Parse the error and return it. ";
                    person:tell("The built-in function add_property returned the following error: ");
                    person:tell(e[2]);
                    endtry
                    endif
                    endif
                    endif
                    endif
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="out of/from inside/from" IOBJ="any">
                  <NAME>create</NAME>
                  <CODE>
                    "#10:create (str objName, from, str parent)";
                    "creates new object with name objName and parent parent.";
                    "if iobj is not valid will match iobjstr to a valid object.";
                    "will reference a form on the form object for that parent";
                    "and prompt the player to set default property values. if";
                    "no template is available, no questions are asked. objects";
                    "that wizards create will prompt for fertility; architects";
                    "(programmer/builders) will not be able to create fertile";
                    "objects. new classes can only be implemented by wizards.";
                    if ((dobjstr == "") || (iobjstr == ""))
                    player:tell("Not enough arguments.");
                    player:tell("Syntax:  create &lt;newname&gt; from &lt;class&gt;");
                    return 0;
                    elseif (!valid(iobj))
                    player:tell("Class must be a valid object.");
                    player:tell("Syntax:  create &lt;newname&gt; from &lt;class&gt;");
                    return 0;
                    elseif (iobj.f == 0)
                    player:tell(("Class object '" + iobj.name) + "' is not fertile. Change its 'f' bit to 1 and try again.");
                    return 0;
                    endif
                    new_object_num = iobj:_create(player);
                    if (!valid(new_object_num))
                    player:tell("Object number returned from call to :create is invalid.  Check your code.  It is fucked up.");
                    return 0;
                    endif
                    new_object_num.name = dobjstr;
                    new_object_num.f = 0;
                    new_object_num.r = 1;
                    new_object_num.w = 1;
                    player:tell(new_object_num:move_to(player)[2]);
                    player:tell(((((((("You have just created object " + tostr(new_object_num)) + " named ") + new_object_num.name) + " as a child of ") + iobj.name) + "(") + tostr(iobj)) + ").");
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                  <NAME>#*</NAME>
                  <CODE>
                    " #10:#*(STR) none none none ";
                    "";
                    " *:  The object whose name you are looking for. ";
                    "     At this time it must be a number (no string matching). ";
                    "";
                    " Returns:  STR ";
                    " STR:  The name of the OBJ. ";
                    "";
                    " Modifies:  none ";
                    " Owner:  $dm ";
                    " Perms:  owner ";
                    " Called by:  DMs ";
                    "";
                    " Description:  Temporary functionality because I'm tired of having ";
                    "               to type  ;#4.name when all I really want to do is type ";
                    "               #4 and get the object's name.  I may get rid of this ";
                    "               function later, replace it or give it more functionality. ";
                    "";
                    " NOTE:  When string matching has been completed I will allow for such ";
                    "        matching within this function as well. ";
                    "";
                    " Example:  #4   =&gt;  \"Finder\"  ";
                    " Example:  #me  =&gt;  \"Finder\"  ";
                    "";
                    syntax = "SYNTAX:  #&lt;number of the object you are referencing&gt;";
                    example1 = "For example:  #4";
                    example2 = "For example:  #me";
                    "";
                    person = player;
                    what = tostr(verb);
                    " The following :tell() is for formatting purposes only. ";
                    person:tell();
                    if (what == "#")
                    person:tell(syntax);
                    person:tell(example1);
                    else
                    " NOTE:  I won't have to use this awkward if-statement once string matching ";
                    "        has been completed. ";
                    "";
                    if (!(what[2] in {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"}))
                    person:tell("String matching has not been completed yet.  Please use a number instead.");
                    else
                    what = toobj(what);
                    try
                    person:tell(toliteral(what.name));
                    except (E_INVIND)
                    person:tell("That object does not exist.");
                    endtry
                    endif
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                  <NAME>dm</NAME>
                  <CODE>
                    "$dm:dm any any any";
                    if (player in $dm:descendants())
                    if (!("dm" in player.current_channels))
                    player:tell("%WYour channel has been turned on.%w");
                    player.current_channels = setadd(player.current_channels, "dm");
                    endif
                    for dm in ($channels.dm_channel)
                    if ("dm" in dm.current_channels)
                    dm:tell();
                    dm:tell((((($channels.dm_prefix + " ") + player.name) + ": ") + argstr) + "%w");
                    endif
                    endfor
                    else
                    player:tell($bad_command);
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
                  <NAME>che*ckpoint</NAME>
                  <CODE>
                    "$dm:checkpoint none none none";
                    msg = player.name + ": checkpoint...";
                    $log:add_entry("system", "[INFO]", msg);
                    dump_database();
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
                  <NAME>showlog</NAME>
                  <CODE>
                    "#10:showlog any any any";
                    {?logname = ""} = args;
                    if (logname == "")
                    player:tell("Specify a log to show:%W");
                    player:tell($log.logs);
                    elseif (!(logname in $log.logs))
                    player:tell("No such log exists.");
                    else
                    for each in ($log.(logname))
                    player:tell("%W", ctime(each[1]), " ", $log.level_colors[is_member(each[2], $log.log_levels)], each[2], " %w", each[3]);
                    endfor
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
                  <NAME>shutdown</NAME>
                  <CODE>
                    "$dm:shutdown any none none";
                    if (argstr == "")
                    player:tell("Specify when to shut down.");
                    elseif (argstr == "cancel")
                    if ($shutdown_pid != 0)
                    player:tell("System Shutdown cancelled.");
                    kill_task($shutdown_pid);
                    $shutdown_pid = 0;
                    else
                    player:tell("No shutdown task queued.");
                    endif
                    else
                    when = args[1];
                    why = $utils:triml($utils:trimr(argstr[length(args[1]) + 1..length(argstr)]));
                    if (tonum(when) == 0)
                    player:tell("Specify a valid time to shutdown.");
                    else
                    if ($shutdown_pid != 0)
                    kill_task($shutdown_pid);
                    $shutdown_pid = 0;
                    endif
                    if ((when == "now") || (when == "0"))
                    $shutdown(0, why);
                    else
                    $shutdown(tonum(when), why);
                    endif
                    endif
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                  <NAME>taillog</NAME>
                  <CODE>
                    "#10:taillog any any any";
                    {?logname = "", ?numlines = 0} = args;
                    numlines = tonum(numlines);
                    numlines = numlines ? numlines | 25;
                    if (logname == "")
                    player:tell("Specify a log to tail:%W");
                    player:tell($log.logs);
                    elseif (!(logname in $log.logs))
                    player:tell("No such log exists.");
                    else
                    loglength = length($log.(logname));
                    numlines = (numlines &lt; loglength) ? numlines | loglength;
                    start = (loglength - numlines) + 1;
                    messages = {@$log.(logname)[start..$]};
                    for each in (messages)
                    player:tell("%W", ctime(each[1]), " ", $log.level_colors[is_member(each[2], $log.log_levels)], each[2], " %w", each[3]);
                    endfor
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
                  <NAME>for*ked</NAME>
                  <CODE>
                    "$dm:for*ked any none none";
                    qtasks = queued_tasks();
                    player:tell("%WTasks queued for execution:%w");
                    for task in (qtasks)
                    taskid = task[1];
                    exectime = task[2];
                    owner = task[5];
                    verbloc = task[6];
                    verbname = task[7];
                    linenum = task[8];
                    thisobj = task[9];
                    player:tell("%W  ", taskid, "%w with owner ", owner, "  ", ctime(exectime), "%Y   ", thisobj, ":", verbname, " at line ", linenum, ".%w  Defined on ", verbloc, ".");
                    endfor
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
                  <NAME>time</NAME>
                  <CODE>
                    "$dm:time none none none";
                    player:tell("%W", $utils:ftime(ctime()), "%w");
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
                  <NAME>allobj*ects</NAME>
                  <CODE>
                    "$dm:allobj*ects none none none";
                    for each in [1..tonum(max_object())]
                    targ = toobj(each);
                    if (valid(targ))
                    if (targ.core == 1)
                    player:tell(((("%Y" + tostr(targ)) + "  %w[ ") + targ.name) + " ]");
                    else
                    player:tell((("%W" + tostr(targ)) + "  %w") + targ.name);
                    endif
                    else
                    player:tell(("%R" + tostr(targ)) + "  &lt; Invalid Object Number &gt;%w");
                    endif
                    endfor
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
                  <NAME>msg_all</NAME>
                  <CODE>
                    "$DM:msg_all this none this.  Called by $animate:msg.";
                    "Global messaging function only usable by Dungeon Masters.";
                    "To be used SPARINGLY since the message is sent to ALL connected players.";
                    message_raw = argstr;
                    if (message_raw in {"all", "global"})
                    "no message was sent with the command";
                    player:tell("%BSend what message to all connected players?%w");
                    else
                    if (message_raw[1] == "a")
                    "message all";
                    message = message_raw[5..$];
                    else
                    "message global";
                    message = message_raw[8..$];
                    endif
                    players = connected_players();
                    for each in (players)
                    each:tell();
                    each:tell("%W&lt;&lt; Global Message from ", player.name, " &gt;&gt; ", message, "%w");
                    endfor
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
                  <NAME>force_channel</NAME>
                  <CODE>
                    "$dm:force_channel this none this";
                    chan = args[1];
                    if (chan in {"admin", "design", "dm"})
                    full_list = $channels.(chan + "_channel");
                    listeners = {};
                    for x in (full_list)
                    if (x in connected_players())
                    listeners = {@listeners, x};
                    x.current_channels = setadd(x.current_channels, chan);
                    endif
                    endfor
                    others = setremove(listeners, player);
                    names = {};
                    for y in (others)
                    names = {@names, y.name};
                    endfor
                    for z in (others)
                    z:tell("");
                    z:tell((($channels.(chan + "_prefix") + " %R") + player.name) + " would like your attention.%w");
                    z:tell("%WYour channel has been turned on.%w");
                    endfor
                    player:tell("");
                    player:tell($channels.(chan + "_prefix") + " %RYou now have the attention of everyone on this channel.%w");
                    if (names)
                    player:tell(("%cListeners:%C " + $utils:list_to_string(names, ", ")) + "%w");
                    else
                    player:tell("%cUnfortunately, you are the only one logged in who can listen to this channel...%w");
                    endif
                    else
                    player:tell("%WThere is no such channel.%w");
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
                  <NAME>home</NAME>
                  <CODE>
                    "$dm:home any none none";
                    "send either yourself (default) or named object home";
                    {?targ = ""} = args;
                    if (targ == "")
                    if (valid(this.home))
                    this:move_to(this.home);
                    else
                    this:tell("%wYou do not have a valid %Whome%w set.");
                    endif
                    else
                    this:tell("Cannot send items home just yet...");
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
                  <NAME>mkcore</NAME>
                  <CODE>
                    "$dm:mkcore() none none none";
                    "deletes all non-core objects, resets passwords, logs";
                    if ($safety_lock == 1)
                    player:tell("You cannot make this db a core!");
                    $log:add_entry("system", "[WARNING]", "Failed mkcore attempt by " + player.name);
                    else
                    player:tell("Do you want to convert this database into a core? WARNING: this will delete all items except core items!");
                    answer = read(player, 0);
                    if (answer != "YES")
                    player:tell("Ok, aborting.");
                    $log:add_entry("system", "[WARNING]", "Aborted mkcore attempt by " + player.name);
                    else
                    player:tell("Enter your password for confirmation:");
                    typedpass = read(player, 0);
                    auth = crypt(typedpass, player.password[1..2]) == player.password;
                    if (auth == 0)
                    player:tell("Wrong password. Aborting.");
                    $log:add_entry("system", "[WARNING]", "Incorrect password on mkcore attempt by " + player.name);
                    else
                    "set $recycler.recycle_time_limit to 10";
                    current_recycle_time_limit = $recycler.recycle_time_limit;
                    $recycler.recycle_time_limit = 10;
                    "recycle all non-core objects";
                    for x in [0..tonum(max_object())]
                    xobj = toobj(x);
                    if (valid(xobj) &amp;&amp; (xobj.core == 0))
                    if (is_player(xobj))
                    set_player_flag(xobj, 0);
                    endif
                    xobj:recycle();
                    endif
                    endfor
                    "rename ixion to admin";
                    #5.name = "Admin";
                    "set password to admin";
                    #5.password = crypt("admin");
                    "finders password change";
                    #4.password = crypt("admin");
                    "reset recycle_time_limit";
                    $recycler.recycle_time_limit = current_recycle_time_limit;
                    "zero out logs";
                    for each in ($log.logs)
                    $log.(each) = {};
                    endfor
                    $safety_lock = 1;
                    player:tell("corified.");
                    endif
                    endif
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
                  <NAME>who_string</NAME>
                  <CODE>
                    "$dm:who_string() this none this";
                    viewer = args[1];
                    gender = {"N", "B", "F", "M"}[this.gender in {"neither", "both", "female", "male"}];
                    "afk";
                    if (this.afk)
                    afk = $who.afk + "  ";
                    else
                    afk = "       ";
                    endif
                    "editing";
                    if (this.location:is_a($editor))
                    edit = $who.editing + "  ";
                    else
                    edit = "           ";
                    endif
                    "idle";
                    idle = idle_seconds(this);
                    if (idle &gt; 3600)
                    idle = $who.dormant + "  ";
                    elseif (idle &gt; 1800)
                    idle = $who.vegetating + "  ";
                    elseif (idle &gt;= 600)
                    idle = $who.idle + "  ";
                    else
                    idle = "        ";
                    endif
                    name_string = $utils:padr(this.name, 16, " ");
                    who_string = (((((((("%Y[" + "%yDM   ") + gender) + "%Y] ") + name_string) + afk) + edit) + idle) + $who.admin) + "%w";
                    return who_string;
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
                  <NAME>reset</NAME>
                  <CODE>
                    "$dm:reset any none none";
                    "resets shit so I don't have to manually change props during testing";
                    if (argstr == "here")
                    player.location.combatants = {};
                    for each in (player.location.contents)
                    if (each:is_a($animate))
                    each.targets = {};
                    each.position = "standing";
                    each.consciousness = "awake";
                    each.cur_hp = each:max_hp();
                    each:set_combat_stance("attack");
                    each.current_spell = 0;
                    each.cur_endurance = each:max_endurance();
                    each.cur_focus = each:max_focus();
                    endif
                    endfor
                    player.location.combat_pid = 0;
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
                  <NAME>missing</NAME>
                  <CODE>
                    "$dm:missing() none none none";
                    "shows verbs with no associated help files";
                    "create list of verbs";
                    verblist = {};
                    verbnames = {};
                    allobjs = #1:descendants();
                    for each in (allobjs)
                    verblist = {@verblist, @verbs(each)};
                    endfor
                    "get rid of asterisks";
                    for each in (verblist)
                    verbnames = {@verbnames, strsub(each, "*", "")};
                    endfor
                    verbnames = $utils:sort(verbnames);
                    "create list of help topics";
                    index = {};
                    topics = {};
                    helpobjs = #15:descendants();
                    for each in (helpobjs)
                    index = {@index, @each.index};
                    endfor
                    for each in (index)
                    topics = {@topics, each[1]};
                    endfor
                    "find verbnames that aren't in the topic list";
                    for each in (verbnames)
                    if (!(each in topics))
                    player:tell(each);
                    endif
                    endfor
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
                  <NAME>audit</NAME>
                  <CODE>
                    "$dm:audit any none none";
                    "various options to get info on objects in database";
                    "audit owners - shows ownership of all objs, verbs, props that arent owned by #10";
                    arg1 = args[1];
                    maxobj = tonum(max_object());
                    if (arg1 == "owners")
                    for x in [0..maxobj]
                    xobj = toobj(x);
                    if (!valid(xobj))
                    player:tell(("#" + tostr(x)) + " --&gt; invalid object");
                    else
                    obj_owner = xobj.owner;
                    if (obj_owner != #10)
                    player:tell((("#" + tostr(x)) + " --&gt; ") + tostr(obj_owner));
                    endif
                    props = properties(xobj);
                    for prop in (props)
                    prop_owner = property_info(xobj, prop)[1];
                    if (prop_owner != #10)
                    player:tell((((("  " + tostr(xobj)) + ".") + prop) + " -&gt; ") + tostr(prop_owner));
                    endif
                    endfor
                    verblist = verbs(xobj);
                    for xverb in (verblist)
                    verb_owner = verb_info(xobj, is_member(xverb, verbs(xobj)))[1];
                    if (verb_owner != #10)
                    player:tell((((("  " + tostr(xobj)) + ":") + xverb) + " -&gt; ") + tostr(verb_owner));
                    endif
                    endfor
                    endif
                    endfor
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="none" IOBJ="none">
                  <NAME>chown</NAME>
                  <CODE>
                    "$dm:chown any none none";
                    "change ownership of an object, prop, or verb, or do mass changes";
                    "chown allobjs -- mass change all objects to be owned by #10";
                    arg1 = args[1];
                    maxobj = tonum(max_object());
                    if (arg1 == "allobjs")
                    for x in [0..maxobj]
                    xobj = toobj(x);
                    if (!valid(xobj))
                    player:tell(("#" + tostr(x)) + " --&gt; invalid object");
                    else
                    if (xobj.owner != #10)
                    newowner = xobj:chown(#10);
                    player:tell((("#" + tostr(x)) + " --&gt; ") + tostr(newowner));
                    endif
                    endif
                    endfor
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                  <NAME>trunclog</NAME>
                  <CODE>
                    "#10:trunclog any any any";
                    {?logname = "", ?lines = "0"} = args;
                    if (logname == "")
                    player:tell("Specify a log to truncate:%W");
                    player:tell($log.logs);
                    elseif (!(logname in $log.logs))
                    player:tell("No such log exists.");
                    else
                    loglen = length($log.(logname));
                    if (lines == "0")
                    $log.(logname) = {};
                    player:tell(((logname + " truncated to ") + tostr(lines)) + " lines.");
                    elseif (loglen &lt; tonum(lines))
                    player:tell(("Log is only " + tostr(loglen)) + " lines long.");
                    else
                    $log.(logname) = {@$log.(logname)[(loglen - tonum(lines)) + 1..$]};
                    player:tell(((logname + " truncated to ") + tostr(lines)) + " lines.");
                    endif
                    endif
                  </CODE>
                </VERB>
                <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
                  <NAME>match</NAME>
                  <CODE>
                    "#10:match(str, objlist) - returns a list of objs from args[2] that";
                    "are known to this or aliased to args[1]. if no match, returns empty list.";
                    "of no args[2], uses all objects.  yes, scary. note special case with $objref";
                    "objnums are matched exactly.  no need for partials with them.";
                    "also note special cases: here, me, any others?";
                    {token, ?objlist = 0} = args;
                    "here and me";
                    if (token == "here")
                    return {this.location};
                    elseif (token == "me")
                    return {this};
                    else
                    "check for dollar sign ref";
                    if (token[1] == "$")
                    dollar_obj = $utils:match_dollar_ref(token);
                    "if dollar sign ref is valid";
                    if (dollar_obj != 0)
                    "set token to the objnum (in string form) to do normal matching below.";
                    token = tostr(dollar_obj);
                    endif
                    endif
                    if (objlist == 0)
                    objlist = {#1, @#1:descendants()};
                    endif
                    count = 0;
                    count_and_item = $utils:parse_dot_ref(token);
                    if (count_and_item)
                    {count, item} = count_and_item;
                    endif
                    if (count &gt; 0)
                    token = item;
                    endif
                    matchlist = {};
                    for each in (objlist)
                    if (!(each in matchlist))
                    doesmatch = 0;
                    names = {each:known_to(this)[2], @each.aliases, tostr(each)};
                    for name in (names)
                    "exact match the objnums";
                    if (token[1] == "#")
                    doesmatch = doesmatch || (token == name);
                    else
                    doesmatch = doesmatch || (index(name, token) == 1);
                    endif
                    endfor
                    if (doesmatch)
                    matchlist = {@matchlist, each};
                    endif
                    endif
                    endfor
                    if (count == 0)
                    return matchlist;
                    elseif (count &lt;= length(matchlist))
                    return {matchlist[count]};
                    else
                    return {};
                    endif
                    endif
                  </CODE>
                </VERB>
                <OBJECT ID="obj4" FLAGS="wizard programmer player" OWNER="obj10" LOCATION="obj33">
                  <NAME>admintoo</NAME>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>show_obj_nums</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>owned_objects</NAME>
                    <VALUE>{#92, #93, #94, #96, #63, #75, #72, #83}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>editing_prop</NAME>
                    <VALUE>""</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>editing_obj</NAME>
                    <VALUE>#-1</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>editing_loc</NAME>
                    <VALUE>#-1</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>insert_point</NAME>
                    <VALUE>3</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>prompt_on</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>color</NAME>
                    <VALUE>1</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_hear</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_see</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_smell</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>prompt_string</NAME>
                    <VALUE>"%B[%dhp%hp%B/%c%HP%B][%df%f%B/%c%F%B][%de%e%B/%c%E%B]%w "</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_hp</NAME>
                    <VALUE>56</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>cur_hp</NAME>
                    <VALUE>56</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>password</NAME>
                    <VALUE>"x244x9BNGQMeQ"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>messages</NAME>
                    <VALUE>{}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_feel</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_taste</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>known_languages</NAME>
                    <VALUE>{#63, #75}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>current_language</NAME>
                    <VALUE>#75</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>gender</NAME>
                    <VALUE>"neither"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>afk</NAME>
                    <VALUE>0</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_str</NAME>
                    <VALUE>18</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_int</NAME>
                    <VALUE>9</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_hea</NAME>
                    <VALUE>15</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_spd</NAME>
                    <VALUE>8</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_cnc</NAME>
                    <VALUE>5</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>held</NAME>
                    <VALUE>{#69, #57, #65, #83}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>help_db</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>wielded</NAME>
                    <VALUE>{}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>worn</NAME>
                    <VALUE>{}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>species</NAME>
                    <VALUE>#89</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>height</NAME>
                    <VALUE>80</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>current_channels</NAME>
                    <VALUE>{"dm", "admin", "design"}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>position</NAME>
                    <VALUE>"standing"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>consciousness</NAME>
                    <VALUE>"awake"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_ac</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>skills</NAME>
                    <VALUE>{"Flatware", 9, "Lute", 7, "Pan_Flute", 4, "Long_Bow", 9, "Long_Sword", 6, "Crossbow", 8, "Dagger", 10, "Fishing", 2, "Repair Clothing", 6, "Horseback Riding", 7}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_dex</NAME>
                    <VALUE>10</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_con</NAME>
                    <VALUE>14</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>combat_stance</NAME>
                    <VALUE>"attack"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>known_players</NAME>
                    <VALUE>{#90, "Poop"}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>targets</NAME>
                    <VALUE>{}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>last_connected</NAME>
                    <VALUE>"Saturday, August 24th, 9:09pm EDT"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>combat_init</NAME>
                    <VALUE>2</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>combat_weapon</NAME>
                    <VALUE>#69</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_endurance</NAME>
                    <VALUE>135</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>cur_endurance</NAME>
                    <VALUE>148</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_focus</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>cur_focus</NAME>
                    <VALUE>100</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>current_spell</NAME>
                    <VALUE>0</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>paths</NAME>
                    <VALUE>{#87, 10}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>prompt_colors</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>finished</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>full_name</NAME>
                    <VALUE>"Finder Findificus"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>total_points</NAME>
                    <VALUE>64</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>form_members</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>leader</NAME>
                    <VALUE>0</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>start_location</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>description</NAME>
                    <VALUE>{"%BAn aged Elf of exceptional flavor."}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>aliases</NAME>
                    <VALUE>{}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>home</NAME>
                    <VALUE>#92</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>short_desc</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>core</NAME>
                    <VALUE>1</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>handedness</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_enc</NAME>
                    <VALUE>30</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_weight</NAME>
                    <VALUE>302</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>capacity</NAME>
                    <VALUE>100</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>max_fit</NAME>
                    <VALUE>100</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>pprep</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>gprep</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>generic_name</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>age</NAME>
                    <VALUE>9932</VALUE>
                  </PROPERTY>
                  <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
                    <NAME>ht</NAME>
                    <CODE>
                      force_input(#4, "tree 15 all");
                    </CODE>
                  </VERB>
                  <VERB OWNER="obj10" PERMS="d x w r" DOBJ="any" PREP="any" IOBJ="any">
                    <NAME>test</NAME>
                    <CODE>
                      "$utils:string_to_frag*ment this none this";
                      words = $utils:string_to_list(args[1]);
                      len = length(words);
                      first = random(len);
                      rest = len - first;
                      if (!rest)
                      frag = words[first];
                      else
                      newlist = {};
                      more = random(rest + 1) - 1;
                      count = first;
                      while (count &lt;= (first + more))
                      newlist = {@newlist, words[count]};
                      count = count + 1;
                      endwhile
                      frag = $utils:list_to_string(newlist, " ");
                      endif
                      return frag;
                    </CODE>
                  </VERB>
                  <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                    <NAME>temp</NAME>
                    <CODE>
                      thelist = {"one", "two", "three"};
                      thelist[$] = "zero";
                      this:tell($utils:list_to_str(thelist, ", "));
                    </CODE>
                  </VERB>
                </OBJECT>
                <OBJECT ID="obj5" FLAGS="wizard programmer player" OWNER="obj10" LOCATION="obj33">
                  <NAME>Admin</NAME>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>shit</NAME>
                    <VALUE>0</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>show_obj_nums</NAME>
                    <VALUE>1</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>owned_objects</NAME>
                    <VALUE>{#23, #88, #95, #57, #62, #60, #17, #59}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>editing_prop</NAME>
                    <VALUE>""</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>editing_obj</NAME>
                    <VALUE>#-1</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>editing_loc</NAME>
                    <VALUE>#-1</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>insert_point</NAME>
                    <VALUE>2</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>prompt_on</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>color</NAME>
                    <VALUE>1</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_hear</NAME>
                    <VALUE>3</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_see</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_smell</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>prompt_string</NAME>
                    <VALUE>"bash$"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_hp</NAME>
                    <VALUE>47</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>cur_hp</NAME>
                    <VALUE>47</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>password</NAME>
                    <VALUE>"SrU4bmypbPpMo"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>messages</NAME>
                    <VALUE>{}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_feel</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_taste</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>known_languages</NAME>
                    <VALUE>{#63, #75}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>current_language</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>gender</NAME>
                    <VALUE>"male"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>afk</NAME>
                    <VALUE>0</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_str</NAME>
                    <VALUE>14</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_int</NAME>
                    <VALUE>10</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_hea</NAME>
                    <VALUE>13</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_spd</NAME>
                    <VALUE>10</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_cnc</NAME>
                    <VALUE>16</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>held</NAME>
                    <VALUE>{#61, #62, #78, #59, #34, #50}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>help_db</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>wielded</NAME>
                    <VALUE>{}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>worn</NAME>
                    <VALUE>{}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>species</NAME>
                    <VALUE>#67</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>height</NAME>
                    <VALUE>72</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>current_channels</NAME>
                    <VALUE>{"design", "admin", "dm"}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>position</NAME>
                    <VALUE>"standing"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>consciousness</NAME>
                    <VALUE>"awake"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_ac</NAME>
                    <VALUE>10</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>skills</NAME>
                    <VALUE>{"Long_Sword", 4, "Stealth", 8, "Dagger", 10, "Casting", 7}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_dex</NAME>
                    <VALUE>19</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_con</NAME>
                    <VALUE>14</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>combat_stance</NAME>
                    <VALUE>"attack"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>known_players</NAME>
                    <VALUE>{#56, "Theo...", #4, "Fidner"}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>targets</NAME>
                    <VALUE>{}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>last_connected</NAME>
                    <VALUE>"Saturday, August 24th, 9:09pm EDT"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>combat_init</NAME>
                    <VALUE>0</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>combat_weapon</NAME>
                    <VALUE>#78</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_endurance</NAME>
                    <VALUE>135</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>cur_endurance</NAME>
                    <VALUE>105</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_focus</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>cur_focus</NAME>
                    <VALUE>100</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>current_spell</NAME>
                    <VALUE>0</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>paths</NAME>
                    <VALUE>{#87, 9}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>prompt_colors</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>finished</NAME>
                    <VALUE>0</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>full_name</NAME>
                    <VALUE>"Not the One"</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>total_points</NAME>
                    <VALUE>83</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>form_members</NAME>
                    <VALUE>{}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>leader</NAME>
                    <VALUE>0</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>start_location</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>description</NAME>
                    <VALUE>{"A blue tinted, cold-looking giant with icicles dangling from his beard."}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>aliases</NAME>
                    <VALUE>{}</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>home</NAME>
                    <VALUE>#33</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>short_desc</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>core</NAME>
                    <VALUE>1</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>handedness</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_enc</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>base_weight</NAME>
                    <VALUE>165</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>capacity</NAME>
                    <VALUE>100</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>max_fit</NAME>
                    <VALUE>100</VALUE>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>pprep</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>gprep</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>generic_name</NAME>
                  </PROPERTY>
                  <PROPERTY OWNER="obj10" PERMS="w r">
                    <NAME>age</NAME>
                    <VALUE>9687</VALUE>
                  </PROPERTY>
                  <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
                    <NAME>testsort</NAME>
                    <CODE>
                      items = toint(args[1]);
                      sortlist = {};
                      for each in [1..items]
                      sortlist = {@sortlist, random(100000)};
                      endfor
                      player:tell(ctime());
                      $utils:sort(sortlist);
                      player:tell(ctime());
                    </CODE>
                  </VERB>
                  <VERB OWNER="obj10" PERMS="d w r" DOBJ="none" PREP="none" IOBJ="none">
                    <NAME>mc</NAME>
                    <CODE>
                      allobj = {#1, @#1:descendants()};
                      for item in (allobj)
                      item.core = 1;
                      endfor
                    </CODE>
                  </VERB>
                  <VERB OWNER="obj10" PERMS="d w r" DOBJ="any" PREP="any" IOBJ="any">
                    <NAME>testing</NAME>
                    <CODE>
                      #5:tell(args[1]);
                      #5:tell(args[2]);
                      #5:tell(args[3]);
                    </CODE>
                  </VERB>
                </OBJECT>
              </OBJECT>
            </OBJECT>
          </OBJECT>
          <OBJECT ID="obj25" FLAGS="player" OWNER="obj10" LOCATION="obj-1">
            <NAME>Anonymous</NAME>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_on</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>color</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hear</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_see</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_smell</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_string</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hp</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_hp</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>password</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>messages</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_feel</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_taste</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>known_languages</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_language</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gender</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>afk</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_str</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_int</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hea</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_spd</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_cnc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>held</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>help_db</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>wielded</NAME>
              <VALUE>{}</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>worn</NAME>
              <VALUE>{}</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>species</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>height</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_channels</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>position</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>consciousness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_ac</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>skills</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_dex</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_con</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_stance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>known_players</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>targets</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>last_connected</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_init</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_weapon</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_endurance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_endurance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_focus</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_focus</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_spell</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>paths</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_colors</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>finished</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>full_name</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>total_points</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>form_members</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>leader</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>start_location</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>description</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>aliases</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>home</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>short_desc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>core</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>handedness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_enc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_weight</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>capacity</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_fit</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>pprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>generic_name</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>age</NAME>
            </PROPERTY>
          </OBJECT>
        </OBJECT>
        <OBJECT ID="obj7" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
          <NAME>NPC Class</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>color</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_hear</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_see</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_smell</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>prompt_string</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_hp</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>cur_hp</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>password</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>messages</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_feel</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_taste</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>known_languages</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>current_language</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gender</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>afk</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_str</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_int</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_hea</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_spd</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_cnc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>held</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>help_db</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>wielded</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>worn</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>species</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>height</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>current_channels</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>position</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>consciousness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_ac</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>skills</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_dex</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_con</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_stance</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>known_players</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>targets</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>last_connected</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_init</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_weapon</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_endurance</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>cur_endurance</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_focus</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>cur_focus</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>current_spell</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>paths</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>prompt_colors</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>finished</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>full_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>total_points</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>form_members</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>leader</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>start_location</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
        </OBJECT>
        <OBJECT ID="obj66" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
          <NAME>Species Template</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>body_type</NAME>
            <VALUE>""</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>hands</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_worn</NAME>
            <VALUE>{}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_held</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_wielded</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>who_str</NAME>
            <VALUE>"???"</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_dam</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>min_dam</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>adj</NAME>
            <VALUE>""</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>min_height</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_height</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>min_weight</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_weight</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>min_str</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_str</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>min_int</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>min_dex</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>min_spd</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>min_con</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>min_cnc</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_int</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_dex</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_spd</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_con</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_cnc</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>bonus_points</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>leave_announce</NAME>
            <VALUE>"%name walks %dir."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>arrive_announce</NAME>
            <VALUE>"%name walks in from the %dir."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>color</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_hear</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_see</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_smell</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>prompt_string</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_hp</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>cur_hp</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>password</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>messages</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_feel</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_taste</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>known_languages</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>current_language</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gender</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>afk</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_str</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_int</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_hea</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_spd</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_cnc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>held</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>help_db</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>wielded</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>worn</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>species</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>height</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>current_channels</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>position</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>consciousness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_ac</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>skills</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_dex</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_con</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_stance</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>known_players</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>targets</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>last_connected</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_init</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>combat_weapon</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_endurance</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>cur_endurance</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_focus</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>cur_focus</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>current_spell</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>paths</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>prompt_colors</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>finished</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>full_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>total_points</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>form_members</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>leader</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>start_location</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
          <OBJECT ID="obj67" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
            <NAME>Elf Template</NAME>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>body_type</NAME>
              <VALUE>"wingless biped"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>hands</NAME>
              <VALUE>2</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_worn</NAME>
              <VALUE>{"head", 1, "neck", 2, "shoulder", 2, "shirt", 1, "body", 1, "waist", 2, "pants", 1, "legs", 1, "feet", 1, "hands", 1, "arms", 1, "wrists", 2, "ankles", 2, "fingers", 2, "back", 1, "cloak", 1}</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_held</NAME>
              <VALUE>6</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_wielded</NAME>
              <VALUE>2</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>who_str</NAME>
              <VALUE>"Elf"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_dam</NAME>
              <VALUE>2</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_dam</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>adj</NAME>
              <VALUE>"elven"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_height</NAME>
              <VALUE>53</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_height</NAME>
              <VALUE>72</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_weight</NAME>
              <VALUE>70</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_weight</NAME>
              <VALUE>165</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_str</NAME>
              <VALUE>3</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_str</NAME>
              <VALUE>14</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_int</NAME>
              <VALUE>10</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_dex</NAME>
              <VALUE>5</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_spd</NAME>
              <VALUE>10</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_con</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_cnc</NAME>
              <VALUE>8</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_int</NAME>
              <VALUE>20</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_dex</NAME>
              <VALUE>19</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_spd</NAME>
              <VALUE>20</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_con</NAME>
              <VALUE>14</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_cnc</NAME>
              <VALUE>20</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>bonus_points</NAME>
              <VALUE>27</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>leave_announce</NAME>
              <VALUE>"%name walks %dir."</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>arrive_announce</NAME>
              <VALUE>"%name walks in from the %dir."</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>color</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hear</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_see</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_smell</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_string</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hp</NAME>
              <VALUE>45</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_hp</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>password</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>messages</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_feel</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_taste</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>known_languages</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_language</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gender</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>afk</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_str</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_int</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hea</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_spd</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_cnc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>held</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>help_db</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>wielded</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>worn</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>species</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>height</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_channels</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>position</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>consciousness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_ac</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>skills</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_dex</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_con</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_stance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>known_players</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>targets</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>last_connected</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_init</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_weapon</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_endurance</NAME>
              <VALUE>135</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_endurance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_focus</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_focus</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_spell</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>paths</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_colors</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>finished</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>full_name</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>total_points</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>form_members</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>leader</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>start_location</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>description</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>aliases</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>home</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>short_desc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>core</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>handedness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_enc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_weight</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>capacity</NAME>
              <VALUE>100</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_fit</NAME>
              <VALUE>100</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>pprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gprep</NAME>
              <VALUE>"an"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>generic_name</NAME>
              <VALUE>"elf"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>age</NAME>
            </PROPERTY>
          </OBJECT>
          <OBJECT ID="obj84" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
            <NAME>Human Template</NAME>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>body_type</NAME>
              <VALUE>"wingless biped"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>hands</NAME>
              <VALUE>2</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_worn</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_held</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_wielded</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>who_str</NAME>
              <VALUE>"Hum"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_dam</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_dam</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>adj</NAME>
              <VALUE>"human"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_height</NAME>
              <VALUE>52</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_height</NAME>
              <VALUE>78</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_weight</NAME>
              <VALUE>85</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_weight</NAME>
              <VALUE>300</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_str</NAME>
              <VALUE>3</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_str</NAME>
              <VALUE>16</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_int</NAME>
              <VALUE>3</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_dex</NAME>
              <VALUE>3</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_spd</NAME>
              <VALUE>5</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_con</NAME>
              <VALUE>5</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_cnc</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_int</NAME>
              <VALUE>18</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_dex</NAME>
              <VALUE>18</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_spd</NAME>
              <VALUE>15</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_con</NAME>
              <VALUE>18</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_cnc</NAME>
              <VALUE>20</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>bonus_points</NAME>
              <VALUE>30</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>leave_announce</NAME>
              <VALUE>"%name walks %dir."</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>arrive_announce</NAME>
              <VALUE>"%name walks in from the %dir."</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>color</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hear</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_see</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_smell</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_string</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hp</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_hp</NAME>
              <VALUE>-10</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>password</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>messages</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_feel</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_taste</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>known_languages</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_language</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gender</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>afk</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_str</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_int</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hea</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_spd</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_cnc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>held</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>help_db</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>wielded</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>worn</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>species</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>height</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_channels</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>position</NAME>
              <VALUE>"lying"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>consciousness</NAME>
              <VALUE>"dead"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_ac</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>skills</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_dex</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_con</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_stance</NAME>
              <VALUE>"passive"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>known_players</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>targets</NAME>
              <VALUE>{}</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>last_connected</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_init</NAME>
              <VALUE>3</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_weapon</NAME>
              <VALUE>0</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_endurance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_endurance</NAME>
              <VALUE>92</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_focus</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_focus</NAME>
              <VALUE>100</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_spell</NAME>
              <VALUE>0</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>paths</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_colors</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>finished</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>full_name</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>total_points</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>form_members</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>leader</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>start_location</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>description</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>aliases</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>home</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>short_desc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>core</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>handedness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_enc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_weight</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>capacity</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_fit</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>pprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gprep</NAME>
              <VALUE>"a"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>generic_name</NAME>
              <VALUE>"human"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>age</NAME>
            </PROPERTY>
          </OBJECT>
          <OBJECT ID="obj89" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
            <NAME>Frost Giant Template</NAME>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>body_type</NAME>
              <VALUE>"wingless biped"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>hands</NAME>
              <VALUE>2</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_worn</NAME>
              <VALUE>{"head", 1, "neck", 2, "shoulder", 2, "shirt", 1, "body", 1, "waist", 2, "pants", 1, "legs", 1, "feet", 1, "hands", 1, "arms", 1, "wrists", 2, "ankles", 2, "fingers", 2, "back", 1, "cloak", 1}</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_held</NAME>
              <VALUE>6</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_wielded</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>who_str</NAME>
              <VALUE>"FGN"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_dam</NAME>
              <VALUE>32</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_dam</NAME>
              <VALUE>8</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>adj</NAME>
              <VALUE>"giant"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_height</NAME>
              <VALUE>80</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_height</NAME>
              <VALUE>132</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_weight</NAME>
              <VALUE>302</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_weight</NAME>
              <VALUE>670</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_str</NAME>
              <VALUE>18</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_str</NAME>
              <VALUE>20</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_int</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_dex</NAME>
              <VALUE>3</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_spd</NAME>
              <VALUE>8</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_con</NAME>
              <VALUE>14</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>min_cnc</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_int</NAME>
              <VALUE>9</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_dex</NAME>
              <VALUE>11</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_spd</NAME>
              <VALUE>16</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_con</NAME>
              <VALUE>20</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_cnc</NAME>
              <VALUE>5</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>bonus_points</NAME>
              <VALUE>15</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>leave_announce</NAME>
              <VALUE>"%name lumbers %dir."</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>arrive_announce</NAME>
              <VALUE>"The ground trembles as %name lumbers in from the %dir."</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>color</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hear</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_see</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_smell</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_string</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hp</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_hp</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>password</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>messages</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_feel</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_taste</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>known_languages</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_language</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gender</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>afk</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_str</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_int</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_hea</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_spd</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_cnc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>held</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>help_db</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>wielded</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>worn</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>species</NAME>
              <VALUE>#89</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>height</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_channels</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>position</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>consciousness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_ac</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>skills</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_dex</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_con</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_stance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>known_players</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>targets</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>last_connected</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_init</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>combat_weapon</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_endurance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_endurance</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_focus</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>cur_focus</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>current_spell</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>paths</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>prompt_colors</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>finished</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>full_name</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>total_points</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>form_members</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>leader</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>start_location</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>description</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>aliases</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>home</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>short_desc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>core</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>handedness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_enc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_weight</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>capacity</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_fit</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>pprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>generic_name</NAME>
              <VALUE>"frost giant"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>age</NAME>
            </PROPERTY>
          </OBJECT>
        </OBJECT>
      </OBJECT>
      <OBJECT ID="obj13" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
        <NAME>Exit Class</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>source</NAME>
          <VALUE>#-1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>dest</NAME>
          <VALUE>#-1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>direction</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>size</NAME>
          <VALUE>5</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>door</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>open</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>leave_msg</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>leave_announce</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>partner</NAME>
          <VALUE>#13</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>arrive_msg</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>arrive_announce</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>functional</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>func_msg</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>locked</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>locked_msg</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>open_msg</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>open_announce</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>close_msg</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>close_announce</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>lockable</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>key</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>lock_msg</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>lock_announce</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>unlock_msg</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>unlock_announce</NAME>
          <VALUE>""</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>invoke</NAME>
          <CODE>
            "$exit:invoke this none this";
            who = args[1];
            if (this.door &amp;&amp; (!this.open))
            who:tell("%cThe door is closed.%w");
            return 0;
            else
            "Size check.  Zero always denies entrance.";
            if (this.size == 0)
            who:tell("%cThis exit is too small for anything to fit through.%w");
            return 0;
            else
            "Size 10 always allows entrance.";
            if (this.size != 10)
            whoenc = who:encumbrance();
            ok = $exit_size_enc[this.size];
            if (whoenc &gt; ok)
            who:tell("%cYou are too large to fit through this exit.%w");
            return 0;
            endif
            endif
            endif
            endif
            oldloc = who.location;
            x = who:move_to(this.dest);
            if (x[1] == 0)
            who:tell(x[2]);
            else
            newloc = who.location;
            this:invoke_msgs(who, oldloc, newloc);
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_open</NAME>
          <CODE>
            "$exit:_open this none this";
            this.open = 1;
            this.partner.open = 1;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_close</NAME>
          <CODE>
            "$exit:_close this none this";
            this.open = 0;
            this.partner.open = 0;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>invoke_msgs</NAME>
          <CODE>
            "$exit:invoke_msgs this none this";
            exit = this;
            who = args[1];
            oldroom = args[2];
            newroom = args[3];
            "LEAVE messages.";
            if (who:is_a($animate))
            "Decide on appropriate message (if any) to send to invoker.";
            if (x = exit.leave_msg)
            who:tell(x);
            endif
            "Decide what to announce to the room.";
            "if WHO is flying, etc.";
            "  msg = WHO flies exit.direction, blah blah";
            "else";
            group = oldroom:get_animates();
            for each in (group)
            codes = {"%name", "%pro", "%dir"};
            values = {who:known_to(each)[2], #0.(who.gender)[2], exit.direction};
            what = (exit.leave_announce != "") ? exit.leave_announce | who.species.leave_announce;
            for y in [1..length(codes)]
            new = strsub(what, codes[y], values[y], 1);
            what = new;
            endfor
            each:tell(what);
            endfor
            "ENTER messages.";
            "Decide on appropriate message (if any) to send to invoker.";
            if (x = exit.arrive_msg)
            who:tell(x);
            endif
            "Decide what to announce to the room.";
            "if WHO is flying, etc.";
            "  msg = WHO flies exit.direction, blah blah";
            "else";
            group = setremove(newroom:get_animates(), who);
            for each in (group)
            codes = {"%name", "%pro", "%dir"};
            values = {who:known_to(each)[2], #0.(who.gender)[2], exit.partner.direction};
            what = (exit.arrive_announce != "") ? exit.arrive_announce | who.species.arrive_announce;
            for y in [1..length(codes)]
            new = strsub(what, codes[y], values[y], 1);
            what = new;
            endfor
            each:tell(what);
            endfor
            endif
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_lock</NAME>
          <CODE>
            "$exit:_lock this none this";
            this.locked = 1;
            this.partner.locked = 1;
          </CODE>
        </VERB>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>_unlock</NAME>
          <CODE>
            "$exit:_unlock this none this";
            this.locked = 0;
            this.partner.locked = 0;
          </CODE>
        </VERB>
        <OBJECT ID="obj26" FLAGS="w r" OWNER="obj10" LOCATION="obj-1">
          <NAME>north</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>source</NAME>
            <VALUE>#33</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>dest</NAME>
            <VALUE>#32</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>direction</NAME>
            <VALUE>"north"</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>size</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>door</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>open</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>leave_msg</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>leave_announce</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>partner</NAME>
            <VALUE>#35</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>arrive_msg</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>arrive_announce</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>functional</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>func_msg</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>locked</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>locked_msg</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>open_msg</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>open_announce</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>close_msg</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>close_announce</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>lockable</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>key</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>lock_msg</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>lock_announce</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>unlock_msg</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>unlock_announce</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
            <VALUE>{"n"}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
            <VALUE>#33</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
        </OBJECT>
        <OBJECT ID="obj35" FLAGS="w r" OWNER="obj10" LOCATION="obj-1">
          <NAME>south</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>source</NAME>
            <VALUE>#32</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>dest</NAME>
            <VALUE>#33</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>direction</NAME>
            <VALUE>"south"</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>size</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>door</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>open</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>leave_msg</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>leave_announce</NAME>
            <VALUE>"%name walks south."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>partner</NAME>
            <VALUE>#26</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>arrive_msg</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>arrive_announce</NAME>
            <VALUE>"%name sidles into the room from the south."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>functional</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>func_msg</NAME>
            <VALUE>"This door is not functional."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>locked</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>locked_msg</NAME>
            <VALUE>"The door is locked."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>open_msg</NAME>
            <VALUE>"You fling open the door."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>open_announce</NAME>
            <VALUE>"%name flings open the door."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>close_msg</NAME>
            <VALUE>"You quietly close the door."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>close_announce</NAME>
            <VALUE>"%name quietly closes the door."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>lockable</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>key</NAME>
            <VALUE>#83</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>lock_msg</NAME>
            <VALUE>"You fit the key into the door and lock it."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>lock_announce</NAME>
            <VALUE>"%name locks the door."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>unlock_msg</NAME>
            <VALUE>"You fit the key into the door and unlock it."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>unlock_announce</NAME>
            <VALUE>"%name unlocks the door."</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
            <VALUE>{"s"}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
            <VALUE>#26</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
        </OBJECT>
      </OBJECT>
      <OBJECT ID="obj21" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
        <NAME>Detail Class</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj36" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
        <NAME>Furniture Class</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj95" FLAGS="f w r" OWNER="obj5" LOCATION="obj61">
        <NAME>Thing Class</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
        <OBJECT ID="obj19" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
          <NAME>Container Class</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>how_full</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
          <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
            <NAME>will_accept</NAME>
            <CODE>
            </CODE>
          </VERB>
          <OBJECT ID="obj27" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
            <NAME>Wearable Container Class</NAME>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>how_full</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>description</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>aliases</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>home</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>short_desc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>core</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>handedness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_enc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_weight</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>capacity</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_fit</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>pprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>generic_name</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>age</NAME>
            </PROPERTY>
            <OBJECT ID="obj61" FLAGS="w r" OWNER="obj10" LOCATION="obj5">
              <NAME>Leather Dungeon Master Pouch</NAME>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>how_full</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>description</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>aliases</NAME>
                <VALUE>{"pouch"}</VALUE>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>home</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>short_desc</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>core</NAME>
                <VALUE>1</VALUE>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>handedness</NAME>
                <VALUE>2</VALUE>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_enc</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>base_weight</NAME>
                <VALUE>2</VALUE>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>capacity</NAME>
                <VALUE>100</VALUE>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>max_fit</NAME>
                <VALUE>10</VALUE>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>pprep</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>gprep</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>generic_name</NAME>
              </PROPERTY>
              <PROPERTY OWNER="obj10" PERMS="w r">
                <NAME>age</NAME>
              </PROPERTY>
            </OBJECT>
          </OBJECT>
        </OBJECT>
        <OBJECT ID="obj37" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
          <NAME>Consumable Class</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
        </OBJECT>
        <OBJECT ID="obj38" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
          <NAME>Currency Class</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>plural_name</NAME>
            <VALUE>"Currency Class"</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>quantity</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>unit_weight</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
          <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
            <NAME>describe_to</NAME>
            <CODE>
              "#38:describe_to(target) this none this";
              "returns 0 if target isn't a valid animate objidnum";
              "second arg: 0 is for one line desc, e.g. a room look. 1 is for multiline desc, e.g.";
              "look at this, 2 is same as 1.";
              {target, ?msglen = 0} = args;
              if (!target:is_a($animate))
              return 0;
              else
              shownum = "";
              if (target:is_a($architect))
              shownum = (" (" + tostr(this)) + ")";
              endif
              sees_str = (this.quantity == 1) ? ("A " + this.name) + " lies here." | ((((tostr(this.quantity) + " ") + this.plural_name) + shownum) + " lie here.");
              if (msglen == 0)
              target:sees(3, {sees_str});
              elseif (msglen &gt; 1)
              target:sees(3, {sees_str});
              target:sees(3, {this.description});
              endif
              endif
            </CODE>
          </VERB>
          <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
            <NAME>weight</NAME>
            <CODE>
              "#38:weight this none this";
              "returns actual weight of object.  quantity x unit_weight rounded to nearest whole number.";
              weight = tofloat(this.unit_weight) * tofloat(this.quantity);
              return toint(weight);
            </CODE>
          </VERB>
          <OBJECT ID="obj17" FLAGS="f w r" OWNER="obj5" LOCATION="obj61">
            <NAME>Shiny Coin</NAME>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>plural_name</NAME>
              <VALUE>"Shiny Coins"</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>quantity</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>unit_weight</NAME>
              <VALUE>0.02000000000000000042</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>description</NAME>
              <VALUE>{"%WTh%Yi%Ws c%Yo%Win%Ya%Wge sp%Ya%Wrkles and tw%Yi%Wnkles br%Yi%Wghtly%Y.%W"}</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>aliases</NAME>
              <VALUE>{}</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>home</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>short_desc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>core</NAME>
              <VALUE>0</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>handedness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_enc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_weight</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>capacity</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_fit</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>pprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>generic_name</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>age</NAME>
            </PROPERTY>
          </OBJECT>
        </OBJECT>
        <OBJECT ID="obj39" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
          <NAME>Writeable Class</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
        </OBJECT>
        <OBJECT ID="obj40" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
          <NAME>Spellbook Class</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
        </OBJECT>
        <OBJECT ID="obj41" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
          <NAME>Wearable Class</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>where</NAME>
            <VALUE>""</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>quantity</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>body_type</NAME>
            <VALUE>{}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>fits</NAME>
            <VALUE>{0, 100, 0, 2000}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_ac</NAME>
            <VALUE>10</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>ac_mod</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
          <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
            <NAME>fits</NAME>
            <CODE>
              "$wearable:fits() this none this";
              "takes OBJ animate, returns list {0|1, message}";
              target = args[1];
              if (target.height &lt; this.fits[1])
              return {0, "You are too short to wear that item."};
              elseif (target.height &gt; this.fits[2])
              return {0, "You are too tall to wear that item."};
              elseif (target.base_weight &lt; this.fits[3])
              return {0, "You are too small to wear that item."};
              elseif (target.base_weight &gt; this.fits[4])
              return {0, "You are too large to wear that item."};
              else
              return {1, "This item fits you just fine."};
              endif
            </CODE>
          </VERB>
        </OBJECT>
        <OBJECT ID="obj72" FLAGS="f w r" OWNER="obj4" LOCATION="obj-1">
          <NAME>Key Class</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
            <VALUE>{""}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
            <VALUE>{}</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
            <VALUE>"a"</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
            <VALUE>"a"</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
          <OBJECT ID="obj83" FLAGS="w r" OWNER="obj4" LOCATION="obj4">
            <NAME>a brass key in the shape of a ferret</NAME>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>description</NAME>
              <VALUE>{"A ferret dancing in joy, its front paws holding", "a brass ring, its tail becoming the teeth of the key.", ""}</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>aliases</NAME>
              <VALUE>{"key", "brass"}</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>home</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>short_desc</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>core</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>handedness</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_enc</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>base_weight</NAME>
              <VALUE>1</VALUE>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>capacity</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>max_fit</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>pprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>gprep</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>generic_name</NAME>
            </PROPERTY>
            <PROPERTY OWNER="obj10" PERMS="w r">
              <NAME>age</NAME>
            </PROPERTY>
          </OBJECT>
        </OBJECT>
        <OBJECT ID="obj76" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
          <NAME>Weapon Class</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>min_dam</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_dam</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>thac0</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>skill_type</NAME>
            <VALUE>""</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>speed_factor</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>damage_type</NAME>
            <VALUE>""</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
        </OBJECT>
        <OBJECT ID="obj77" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
          <NAME>Shield Class</NAME>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>ac_mod</NAME>
            <VALUE>0</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>description</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>aliases</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>home</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>short_desc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>core</NAME>
            <VALUE>1</VALUE>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>handedness</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_enc</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>base_weight</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>capacity</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>max_fit</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>pprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>gprep</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>generic_name</NAME>
          </PROPERTY>
          <PROPERTY OWNER="obj10" PERMS="w r">
            <NAME>age</NAME>
          </PROPERTY>
        </OBJECT>
      </OBJECT>
    </OBJECT>
    <OBJECT ID="obj12" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
      <NAME>DM Object Class</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj14" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
      <NAME>Effects Class</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj15" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
      <NAME>Help DB Class</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>index</NAME>
        <VALUE>{}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>find_topics</NAME>
        <CODE>
          "#15:find_topics(STR) this none this";
          "takes one string argument, finds an exact matching topic keyword.";
          "if no exact match, then finds all partial matches.";
          "returns topic/article pairs.";
          {?topic = "help"} = args;
          matches = {};
          for each in (this.index)
          if (each[1] == topic)
          return {each};
          elseif (index(each[1], topic) == 1)
          matches = {@matches, each};
          endif
          endfor
          return matches;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>add_topic</NAME>
        <CODE>
          "#15:add_topic this none this";
          "takes one or two args, first is topic keyword, second optionally an";
          "existing articlenum.  if no article specified, adds new topic and articlenum.";
          "if specified, creates a new topic/article pair in index.";
          "must preserve many to one topic/article relationship.";
          {topic, ?article = ""} = args;
          found = 0;
          for each in (this.index)
          if (each[1] == topic)
          return {0, ((("Topic keyword %W" + topic) + "%w already exists in %W") + this.name) + "%w."};
          endif
          endfor
          if (article != "")
          if (article in properties(this))
          this.index = {@this.index, {topic, article}};
          return {1, ((((("Topic keyword %W" + topic) + "%w added to %W") + this.name) + "%w for %Warticle #") + tostr(article)) + "%w."};
          else
          return {0, ((("Specified article number %W" + tostr(article)) + "%w does not exist in %W") + this.name) + "%w."};
          endif
          else
          article = $get_next_help_id();
          value = {};
          perms = "rw";
          owner = $dm;
          add_property(this, article, value, {owner, perms});
          this.index = {@this.index, {topic, article}};
          return {1, ((((((((("Topic keyword %W" + topic) + "%w added to %W") + this.name) + "%w for %Wnew article #") + article) + "%w.  Don't forget to  %Wedit ") + tostr(this)) + ".") + article) + "%w."};
          endif
        </CODE>
      </VERB>
      <OBJECT ID="obj28" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
        <NAME>Player Help Database</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10085</NAME>
          <VALUE>{"PASSWD", "", "Syntax: passwd", "", "Changes your password.  Failures are logged for security", "purposes."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10108</NAME>
          <VALUE>{"INTRODUCE", "", "Syntax:  intro [&lt;player&gt;]", "", "A quick way for you to introduce yourself to other", "players.  With no arguments, you introduce yourself", "with your real name to the entire room.  By naming", "a player, your introduction is aimed at that person", "alone.  Other players see only that you spoke.", "", "Note that the output is not colored and therefore", "cannot be distinguished from an EMOTE (and thus,", "an introduction with a false name).  This is", "intentional.", "", "See Also:  KNOWN, WHO"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10114</NAME>
          <VALUE>{"RENAME", "", "Syntax:  rename &lt;player name&gt;", "", "Allows you to rename any player you know.", "Note, all names must be unique.", "", "See Also:  KNOWN"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>index</NAME>
          <VALUE>{{"passwd", "A10085"}, {"password", "a10085"}, {"introduce", "A10108"}, {"rename", "A10114"}}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj29" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
        <NAME>Coder Help Database</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10027</NAME>
          <VALUE>{"ROOT CLASS : ANCESTORS (THIS NONE THIS)", "", "Usage: &lt;object&gt;:ancestors()", "", "Recursively traverses the parentage of OBJECT, and returns a list of", "objects, in order of traversal, always ending with #1, Root Class (being", "the ultimate ancestor of everything, of course)."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10033</NAME>
          <VALUE>{"ROOT CLASS : CHOWN (THIS NONE THIS)", "", "Usage: &lt;object&gt;:chown( OBJ new_owner )", "", "Changes ownership of &lt;object&gt; to NEW_OWNER.  Modifies OWNED_OBJECTS", "property accordingly.  Returns 0 on failure.  Wrapper function for ", "builtin chown()."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10034</NAME>
          <VALUE>{"ROOT CLASS : _CREATE (THIS NONE THIS)", "", "Usage: &lt;object&gt;:_create( OBJ owner )", "", "Creates a new object as a child of &lt;object&gt; with OWNER as owner.", "Sets the name of new object to \"Child of &lt;object&gt;\", and returns", "the new object number."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10035</NAME>
          <VALUE>{"ROOT CLASS : DESCENDANTS (THIS NONE THIS)", "", "Usage: &lt;object&gt;:descendants()", "", "Returns a list of all the objects that are descended from", "&lt;object&gt;, in no particular order."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10036</NAME>
          <VALUE>{"&lt;VARIOUS&gt; : DESCRIBE_TO (THIS NONE THIS)", "", "Syntax: &lt;object&gt;:describe_to( OBJ animate, INT msg_type )", "", "This function is quite polymorphic; various objects", "will define it differently.  Below are the various implementations.", "They all essentially define what events take place, i.e.", "what messages are passed to ANIMATE in the process of ", "describing itself to ANIMATE.", "", "", "&lt;root class&gt;:describe_to( OBJ animate, INT msg_type )", "", "Accepts two arguments, ANIMATE, which should be a valid $animate,", "and MSG_TYPE, which determines the type of description sent", "to ANIMATE.  ANIMATE is the object to which &lt;object&gt; is describing", "itself.  If MSG_TYPE is 0, a one line description is sent", "to ANIMATE.  If 1, a multi-line description is sent, and if 2,", "a very detailed description is sent, including room contents.", "DESCRIBE_TO() uses the &lt;animate&gt;:sees() function to pass its descriptions.", "Returns zero on invalid $animate.  ", "", "", "&lt;animate&gt;:describe_to( OBJ animate, INT msg_type )", "", "Similar to &lt;root class&gt;:describe_to(), but will display information relevant", "to an animate, e.g. name, description, etc.", "", "", "&lt;room&gt;:describe_to ( OBJ animate )", "", "Takes one argument, sends text to ANIMATE, consisting of a room name, description,", "and exits.  Also displays contents of the room.  If ANIMATE is an $architect,", "also displays object numbers for the room and its contents."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10037</NAME>
          <VALUE>{"ROOT CLASS : HAS_PROPERTY (THIS NONE THIS)", "", "Usage: &lt;object&gt;:has_property( STR propname )", "", "Returns 1 if &lt;object&gt; has a property named PROPNAME, 0", "if not.  Duh."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10038</NAME>
          <VALUE>{"ROOT CLASS : HAS_VERB (THIS NONE THIS)", "", "Usage: &lt;object&gt;:has_verb( STR verbname )", "", "If &lt;object&gt; has the verb VERBNAME, this function returns the object", "on which the verb is defined, otherwise, returns 0."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10039</NAME>
          <VALUE>{"ROOT OBJECT : IS_A (THIS NONE THIS)", "", "Usage: &lt;object&gt;:is_a( OBJ )", "", "Returns 1 if &lt;object&gt; is a descendant of OBJ, 0 otherwise."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10041</NAME>
          <VALUE>{"ROOT CLASS : MOVE_TO (THIS NONE THIS)", "", "Usage: &lt;object&gt;:move_to( OBJ location )", "", "This serves as a wrapper to the builtin moveto() function, and", "does nothing useful at present, except catch the any move_to() errors,", "and exit cleanly."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10042</NAME>
          <VALUE>{"ROOT CLASS : PROPERTIES (THIS NONE THIS)", "", "Usage: &lt;object&gt;:properties ()", "", "Returns a list of strings, the names of each property on &lt;object&gt;,", "not just those defined on &lt;object&gt;."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10043</NAME>
          <VALUE>{"ROOT CLASS : RECYCLE (THIS NONE THIS)", "", "Usage: &lt;object&gt;:recycle()", "", "Takes no arguments.  Invoking this function will initiate the recycling process", "for &lt;object&gt;.  In order to allow for object number reuse, we have developed", "a slightly advanced method of handling object recycling.  When invoked, :recycle()", "forks a task, to execute in $recycler:recycle_time_limit seconds.", "", "When this forked task executes, it moves &lt;object&gt; to #-1, changes the parent of ", "its children to its own parent, moves its contents to $anonymous, ", "transfers ownership of its owned objects to $anonymous, then changes its parent", "to $reusable.  Further, all of its special bits are set to 0, and any verbs defined", "on it are removed.  Finally, its name is changed to Reusable Object #objnum.", "", "Certain items cannot be recycled by this function: Root Class, System Object, $recycler,", "wizards, fertile objects, players, or anything in $recycler:non_recyclable.", "Currently, only descendants of Game Object can be recycled with this method.", "", "This function also makes recovering items queued for recycling very simple, and ", "helps to avoid costly typos, or rash judgements."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10044</NAME>
          <VALUE>{"ROOT CLASS : TREE (THIS NONE THIS)", "", "Usage: &lt;object&gt;:tree ( INT recurs_level, INT all )", "", "This function is called by the command line verb $coder:tree.", "It is used to recurse the object hierarchy, formatting and printing", "names of objects.  This should not be called by anything but ", "the command line TREE verb."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10045</NAME>
          <VALUE>{"ANIMATE CLASS : _DROP (THIS NONE THIS)", "", "Usage: &lt;animate&gt;:_drop ( OBJ )", "", "Causes &lt;animate&gt; to drop OBJ.  Returns a list of two items, an INT and a ", "STR.  INT will be 1 on a successful drop, 0 if the drop was not successful.", "STR will be a suggested message to pass to the player, regardless of success."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10046</NAME>
          <VALUE>{"ANIMATE CLASS : CLEAR_MESSAGES (THIS NONE THIS)", "", "Usage: &lt;animate&gt;:clear_messages()", "", "Called by the command line function MSG.  Sets value of", "&lt;animate&gt;.messages to an empty list, effectively deleting", "all stored messages for &lt;animate&gt;."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10047</NAME>
          <VALUE>{"ANIMATE CLASS : DISCONNECT (THIS NONE THIS)", "", "Usage: &lt;animate&gt;:disconnect()", "", "If max connected players has been reached, sets $max_connected.", "Sets player's AFK status to 0, then disconnects them."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10048</NAME>
          <VALUE>{"ANIMATE : FEELS (THIS NONE THIS)", "ANIMATE : SEES (THIS NONE THIS)", "ANIMATE : HEARS (THIS NONE THIS)", "ANIMATE : SMELLS (THIS NONE THIS)", "ANIMATE : TASTES (THIS NONE THIS)", "", "Usage: &lt;animate&gt;:feels( INT sens_level , LIST messages )", "Usage: &lt;animate&gt;:tastes( INT sens_level , LIST messages )", "Usage: &lt;animate&gt;:smells( INT sens_level , LIST messages )", "Usage: &lt;animate&gt;:sees( INT sens_level , LIST messages , OBJ language , LIST lang_msgs )", "Usage: &lt;animate&gt;:hears( INT sens_level , LIST messages , OBJ language , LIST lang_msgs )", "", "These sensory verbs form the core of communication to animates.  Every", "in game context message gets passed through these sensory verbs.", "", "SENS_LEVEL is an INT from 1 to 5, specifying the minimum level of sensitivity needed", "by &lt;animate&gt; to perceive the event, which is represented by the MESSAGES list.", "The MESSAGES list is composed of a series of messages which &lt;animate&gt; can potentially", "perceive, in order of decreasing sensitivity.  For example, if SENS_LEVEL is 3 (default),", "and &lt;animate&gt;.base_smell is 3 or higher, then &lt;animate&gt; will receive the first message", "in MESSAGES list.  If &lt;animate.base_smell is 2, then &lt;animate&gt; will receive the second", "message, if 1, then &lt;animate&gt; receives the third message.", "", "Setting the SENS_LEVEL to 4 or 5 indicates a barely perceptible event, and only", "animates with hypersensitivity can perceive these events.", "", "HEARS and SEES allow for events to be passed optionally in a specific language.", "This allows for speaking in a particular language, and writing in a particular", "language.  LANG_MSGS correspond to MESSAGES, allowing language specific messages", "for the various sensitivity levels."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10049</NAME>
          <VALUE>{"ANIMATE CLASS : MAX_HP        (THIS NONE THIS)", "                MAX_FOCUS     (THIS NONE THIS)", "                MAX_ENDURANCE (THIS NONE THIS)", "", "Usage: &lt;animate&gt;:max_hp()", "       &lt;animate&gt;:max_focus()", "       &lt;animate&gt;:max_endurance()", "", "Calculates the maximum available hit points, focus, and endurance", "for &lt;animate&gt;.  This must be dynamically calculated, because various", "spell effects and equipment can modify an animate's statistics.", "", "This function should be called when determining how many hit points,", "focus points, or endurance points to add to &lt;animate&gt;.cur_hp, cur_focus,", "and cur_endurance, respectively."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10050</NAME>
          <VALUE>{"ANIMATE : OUTPUT (THIS NONE THIS)", "ANIMATE : OUTPUT_RAW (THIS NONE THIS)", "", "Usage: &lt;animate&gt;:output ( LIST | STR )", "       &lt;animate&gt;:output_raw ( LIST | STR )", "", "These functions serve as wrappers for the builtin function notify().  They", "take either a list of strings, or a singe string, and output these strings to", "the console of &lt;animate&gt;.  OUTPUT() will parse each string and perform ", "color substitution, while OUTPUT_RAW() will output each string as is."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10051</NAME>
          <VALUE>{"ANIMATE CLASS : TELL (THIS NONE THIS)", "ANIMATE CLASS : TELL_RAW (THIS NONE THIS)", "", "Usage: &lt;animate:tell( LIST | STR )", "", "Currently serves as a wrapper for :output() and :output_raw().  Meta data, like", "who lists, score, etc. should be directed through :tell() and tell_raw()."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10052</NAME>
          <VALUE>{"ANIMATE CLASS : STORE_MESSAGE (THIS NONE THIS)", "", "Usage: &lt;animate&gt;:store_message(OBJ message sender, STR message)", "", "Called by the command line function MSG.  Tests to see if", "&lt;animate&gt;.messages is greater than $max_msg_box_size.  If so,", "it returns 0.", "", "Otherwise it records the current time, the sender's OBJ number,", "and the text of the message in &lt;animate&gt;.messages.", "", "See Also:  MSG"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10053</NAME>
          <VALUE>{"ANIMATE CLASS : VIEW_MESSAGES (THIS NONE THIS)", "", "Usage: &lt;animate&gt;:view_messages()", "", "Called by the command line function MSG.", "", "If &lt;animate&gt;.messages is an empty list, the player is told", "that there are no messages to view.", "", "Otherwise, messages are formatted and displayed on the screen,", "including the time stamp, sender's name, and message text.", "", "If the player's mailbox is full (i.e., larger than $max_msg_box_size)", "a warning is displayed following the messages.", "", "See Also:  MSG"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10054</NAME>
          <VALUE>{"ROOM CLASS : DISPLAY_CONTENTS (THIS NONE THIS)", "", "Usage: &lt;room&gt;:display_contents ()", "", "Must be rewritten to use the sensory verbs (hears, sees, feels, tastes, smells).", "Currently displays the contents of &lt;room&gt; to &lt;player&gt;."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10055</NAME>
          <VALUE>{"ROOM CLASS : DISPLAY_EXITS (THIS NONE THIS)", "", "Usage: &lt;room&gt;:display_exits ()", "", "Must be rewritten to use the sensory verbs (hears, sees, feels, tastes, smells).", "Currently displays the exits of &lt;room&gt; to &lt;player&gt;."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10057</NAME>
          <VALUE>{"ROOM CLASS : ENTERFUNC (THIS NONE THIS)", "", "Usage: &lt;room&gt;:enterfunc ( OBJ what_entered )", "", "This function is called by the server whenever an object changes location.", "It serves to display the description of &lt;room&gt; to the item that recently entered."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10059</NAME>
          <VALUE>{"ROOM CLASS : MATCH_EXIT (THIS NONE THIS)", "", "Usage: &lt;room&gt;:match_exit( STR exit_desc )", "", "Called by the movement verb, n s e w, to determine which exit on the current", "location to invoke.  Searches &lt;room&gt;.exits for exits that match EXIT_DESC, and ", "returns the object number of the matching exit.  If more than one exit", "matches, returns $ambiguous_match.  If there is no matching exit, returns $nothing."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10063</NAME>
          <VALUE>{"DOOR CLASS : INVOKE (THIS NONE THIS)", "", "Usage: &lt;door&gt;:invoke( OBJ animate )", "", "Called by movement verb n s e w.  Activates &lt;door&gt;, as if ANIMATE just", "attempted to walk through &lt;door&gt;, subsequently moving ANIMATE to the ", "destination of &lt;door&gt;."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10065</NAME>
          <VALUE>{"SYSTEM OBJECT : DO_LOGIN_COMMAND (THIS NONE THIS)", "", "Usage: &lt;system object&gt;:do_login_command(STR name, STR password)", "", "Called by the server when text is received over a new unauthenticated", "network connection. Authenticates a username and password against the", "player database and upon success connects the session to the player", "object.", "", "Because of peculiarities in the server concerning using a read()", "within do_login_command this verb is rather convoluted.  If you really", "and truly want to know how it works and can't figure it out, send an", "email to Mike &lt;ixion@guardianwall.com&gt;.", "", "Please see the LambdaMOO documentation for more information", "on how do_login_command is invoked by the server."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10066</NAME>
          <VALUE>{"SYSTEM OBJECT : CHECKPOINT_FINISHED (THIS NONE THIS)", "", "Usage: called by server.", "", "Called by server upon completion of a checkpoint operation.  Makes an", "entry in the system log stating completion of the checkpoint operation."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10067</NAME>
          <VALUE>{"ALLOBJECTS", "", "Syntax: allobjects", "", "Displays the OBJ number and name of all objects in the database,", "in order.  Invalid object numbers are displayed in red."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10069</NAME>
          <VALUE>{"SYSTEM OBJECT : CHECKPOINT_STARTED (THIS NONE THIS)", "", "Usage: called by server.", "", "Called by server before execution of a checkpoint operation.  Makes an", "entry in the system log stating the checkpoint operation has begun."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10071</NAME>
          <VALUE>{"SYSTEM OBJECT : DO_PROMPT_TASK (THIS NONE THIS)", "", "Usage: called by server.", "", "Called by the server whenever it feels the client should receive a prompt.", "This is part of a server patch that was applied against the LambdaMOO Server", "code, and is part of what makes the MurpgMOO Server so darned special.", "Don't ask me how the patch works, I don't know.  I didn't write it. I don't ", "know who did.", "", "But it works fairly well.", "", "Parses the players prompt_str, and does any necessary substitutions, e.g.", "hit points, name, effects, colors."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10072</NAME>
          <VALUE>{"SYSTEM OBJECT : GET_NEXT_HELP_ID (THIS NONE THIS)", "", "Usage: &lt;system object&gt;:get_next_help_id ()", "", "Called by &lt;help db&gt;:add_topic() to ensure all help articles are assigned", "a unique article number, regardless of the &lt;help db&gt; they are defined on.", "Returns a unique number, starting with the letter A, and ending with the ", "next available incremented integer.", "", "Increments &lt;system object&gt;.next_help_id."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10073</NAME>
          <VALUE>{"SYSTEM OBJECT : SERVER_STARTED (THIS NONE THIS)", "", "Usage: called by server.", "", "Called by the server upon startup.  Makes an entry in the system log, initializes", "&lt;system object&gt;.start_time &lt;system object&gt;.max_connected."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10076</NAME>
          <VALUE>{"SYSTEM OBJECT : SHUTDOWN (THIS NONE THIS)", "", "Usage: &lt;system object&gt;:shutdown ( INT seconds , STR reason )", "", "Called by DM command SHUTDOWN.  Takes two arguments: SECONDS, which specifies", "how many seconds to wait before shutting down the server, and REASON, which ", "details the reason for shutting down the server.  Makes an entry in the system log,", "alerts all players that the server will be going down, and forks a task to call", "the builtin SHUTDOWN() function.  Currently, this function is commented out, so", "the server does not actually shut down when this function is called."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10078</NAME>
          <VALUE>{"SYSTEM OBJECT : USER_CLIENT_DISCONNECTED (THIS NONE THIS)", "", "Usage: called by server.", "", "Called by server whenever the network connection is broken by the client.", "Writes a message to the connection log."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10079</NAME>
          <VALUE>{"SYSTEM OBJECT : USER_DISCONNECTED (THIS NONE THIS)", "", "Usage: called by server.", "", "Called by server whenever the server terminates a network connection.  Makes an ", "entry in both the connection and login logs."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10080</NAME>
          <VALUE>{"SYSTEM OBJECT : USER_CONNECTED (THIS NONE THIS)", "", "Usage: called by server.", "", "Called whenever a new connection is established and authenticated to a user.", "Updates $max_connected, configures prompt, displays $welcome_msg(), and ", "forces a LOOK command on the player.", "", "Makes an entry in the connection log."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10082</NAME>
          <VALUE>{"SYSTEM OBJECT : USER_RECONNECTED (THIS NONE THIS)", "", "Usage: called by server.", "", "Called by server whenever a network connection is redirected, that is to say,", "when a second connection is authenticated to a currently logged in player.", "$do_login_command() currently does not allow this to happen, so this function", "should never be called.  In case it does, it makes a WARNING entry in the", "connection log."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10083</NAME>
          <VALUE>{"SYSTEM OBJECT : WELCOME_MSG (THIS NONE THIS)", "", "Usage: &lt;system object&gt;:welcome_msg()", "", "Called by $user_connected().  Returns a hard coded string message."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10084</NAME>
          <VALUE>{"UTILITY OBJECT : CAPITALIZE (THIS NONE THIS)", "", "Usage: &lt;utility object&gt;:capitalize( STR )", "", "Returns STR, but with the initial letter capitalized."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10086</NAME>
          <VALUE>{"UTILITY OBJECT : DHMS (THIS NONE THIS)", "", "Usage: &lt;utility object&gt;:dhms( INT seconds )", "", "Returns a list of four values: the number of days, hours, minutes,", "and seconds, represented by SECONDS.", "", "See Also:  DHMS_STR"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10087</NAME>
          <VALUE>{"UTILITY OBJECT : FTIME (THIS NONE THIS)", "", "Usage: &lt;utility object&gt;:ftime( STR )", "", "Takes a date formatted as the output from the builtin function", "ctime(), and converts it into a different format, for example,", "", "     Friday, February 1st, 9:11pm EST"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10089</NAME>
          <VALUE>{"UTILITY OBJECT : LIST_TO_STRING (THIS NONE THIS)", "", "Usage: &lt;utility object&gt;:list_to_string( LIST , STR separator, STR conj )", "", "Takes a list of strings as the first argument, an optional string SEPARATOR,", "and an optional string CONJUNCTION.  Returns a string composed of the", "elements in LIST concatenated, optionally separated by SEPARATOR,", "optionally ending with CONJUNCTION before the last item.", "", "See Also:  STRING_TO_LIST"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10090</NAME>
          <VALUE>{"UTILITY OBJECT : MATCH (THIS NONE THIS)", "", "Usage: &lt;utility object&gt;:match ( STR , LIST objlist , INT exact , INT nameonly )", "", "Returns a list of objects from OBJLIST that are named or aliased as STR.", "If EXACT is true, then match() will only return objects whose names", "or aliases match completely.  If NAMEONLY is true, match() will not ", "match STR to aliases, just object names."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10091</NAME>
          <VALUE>{"UTILITY OBJECT : PADLEFT (THIS NONE THIS)", "UTILITY OBJECT : PADRIGHT (THIS NONE THIS)", "", "Usage: &lt;utility object&gt;:padleft( STR token , INT length , STR padding )", "       &lt;utility object&gt;:padright( STR token , INT length , STR padding )", "", "Returns a string of length LENGTH, composed of TOKEN appended (or prepended)", "with PADDING.  The length of PADDING can be longer than 1, and may", "be truncated.  TOKEN may be truncated as well, if LENGTH is smaller", "than the length of TOKEN."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10092</NAME>
          <VALUE>{"UTILITY OBJECT : SORT (THIS NONE THIS)", "", "Usage: &lt;utility object&gt;:sort( LIST )", "", "Returns a list composed of the elements of LIST sorted", "alphabetically, or in ascending order, depending on data type.", "Assumes all elements in the list are of either STR or INT.", "", "Implements the Quicksort algorithm, and is extremely fast."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10100</NAME>
          <VALUE>{"UTILITY OBJECT : DHMS_STR (THIS NONE THIS)", "", "Usage: &lt;utility object&gt;:dhms_str( LIST days, hours, minutes, seconds )", "", "Takes a list of four values (as from $UTILS:DHMS) in the form of number", "of days, hours, minutes, and seconds, and returns a formatted string.", "", "See Also:  DHMS"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10103</NAME>
          <VALUE>{"PLAYER : KNOWN_TO (THIS NONE THIS)", "", "Usage:  &lt;player&gt;:known_to(OBJ querent)", "", "Determines if player is known to querent,", "and if so, by what name.", "", "Players always know the real names of:", "  Dungeon Masters", "  Architects", "  Coders", "  Admins", "", "Admins know all players.", "", "Everyone knows self.", "", "If none of the above applies, querent.known_players", "is checked.", "", "If the player is known, returns a LIST {1, &lt;STR name&gt;}.", "Note that &lt;name&gt; will refer to the .name property", "if the querent is an Admin.  Otherwise it refers to", "the string in .known_players.", "", "If player is not known, returns a LIST {0, &lt;STR default&gt;}", "with default being a string constructed of species and", "gender."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10104</NAME>
          <VALUE>{"PRONOUNS", "", "The System Object contains pronouns for the following", "genders:  both, female, male, neither.", "", "The pronouns listed are:", "{noun, subject, object, possessive, adj pos, referential}"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10105</NAME>
          <VALUE>{"ANIMATE CLASS : SET_DISCONNECT_INFO (THIS NONE THIS)", "", "Usage: &lt;animate&gt;:set_disconnect_info()", "", "Called by #0:user_disconnected and #0:user_client_disconnected.", "", "Determines whether $max_connected needs to be updated before this player", "disconnects.  Also sets player's AFK status to 0."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10107</NAME>
          <VALUE>{"UTILITY OBJECT : LONGEST_LENGTH (THIS NONE THIS)", "", "Usage:  &lt;utility object&gt;:longest_length( LIST )", "", "Returns an INT -- the length of the longest string.", "Assumes all elements in the list are of type STR."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10111</NAME>
          <VALUE>{"ANIMATE CLASS : _EMOTE (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:_emote( STR )", "", "Does the work of the command line EMOTE command.", "Fetches the :known_to(&lt;animate&gt;) value for every", "animate in the room, then displays this string", "followed by STR.", "", "If the first character of STR is either a space", "or a special character (such as \"'\") then there", "is no space added between the known_to value", "and the STR.  Otherwise, a space is added.", "", "For example:", "             Finder waves its hand.", "             Finder's hand waves of its own volition.", "", "See Also:  EMOTE"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10112</NAME>
          <VALUE>{"ANIMATE CLASS : _SAY (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:_say( STR )", "", "Does the work of the command line SAY command.", "Fetches the :known_to(&lt;animate&gt;) value for every", "animate in the room, then constructs a string using", "this value and STR.  It then sends this to the :hears", "function along with various sensitivity strings and", "the current_language value of &lt;animate&gt;.", "", "See Also:  SAY, EMOTE, _EMOTE"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10116</NAME>
          <VALUE>{"%WUTILITIES", "", "The following utilities are defined on the Utilities Object ($utils, #20)", "", "%Ycap*italize      %W( STR  )            %GReturns STR with first letter capitalized.", "%Ydhms             %W( INT  )            %GReturns LIST of days, hours, minutes, seconds.", "%Ydhms_str         %W( LIST )            %GReturns STR of formatted :dhms output.", "%Yftime            %W( STR  )            %GReturns STR of formatted :ctime output.", "%Ylist_to_str*ing  %W( LIST, [STR, [STR]] )", "                                     %GReturns STR of LIST items.  Separator and ", "                                     conjunction are optional.", "%Ylongest*_length  %W( LIST )            %GReturns INT length of longest item in list.", "%Ymatch            %W( STR, LIST, [1|0], [1|0] )", "                                     %GReturns LIST of objects in LIST that match STR.", "                                     Optional, exact match and search .name only.", "%Ypadl*eft         %W( STR, INT, [STR] ) %GReturns STR of length INT, optionally prepended with STR.", "%Ypadr*ight        %W( STR, INT, [STR] ) %GReturns STR of length INT, optionally appended with STR.", "%Yparse_dot_ref    %W( STR  )            %GReturns LIST of INT reference and STR name.", "%Yparse_prop_ref   %W( STR  )            %GReturns LIST of STR object and STR property name.", "%Yparse_verb_ref   %W( STR  )            %GReturns LIST of STR object and STR verb name.", "%Yrem*ove          %W( LIST, ANY, [1|0] )%GReturns LIST with first or all instances of ANY removed.%w", "%Ystring_to_frag*ment%W( STR )           %GReturns STR fragment of STR.", "%Ystring_to_list   %W( STR  )            %GReturns LIST of words from STR.", "%Ysort             %W( LIST )            %GReturns LIST of sorted INTs or STRs.", "%Ytriml*eft        %W( STR, [STR] )      %GReturns STR with characters removed from lefthand side.", "%Ytrimr*ight       %W( STR, [STR] )      %GReturns STR with characters removed from righthand side.", "%Y_uptime          %W(      )            %GReturns STR of current game uptime.", "", "%WMore information is provided in each utility's help file.%w"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10117</NAME>
          <VALUE>{"UTILITY OBJECT : PARSE_DOT_REF (THIS NONE THIS)", "", "Usage:  &lt;utility object&gt;:parse_dot_ref( STR )", "", "Used for dot matching.  Raw string is broken down into", "INT reference and STR name.", "", "For example:  \"2.sword\" becomes {2, \"sword\"}"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10118</NAME>
          <VALUE>{"UTILITY OBJECT : PARSE_PROP_REF (THIS NONE THIS)", "", "Usage:  &lt;utility object&gt;:parse_prop_ref( STR )", "", "Breaks down STR into the 'object' and 'property' referenced.", "Note, however, that it does not match anything.  Therefore,", "it returns a LIST of STR object and STR property."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10119</NAME>
          <VALUE>{"UTILITY OBJECT : PARSE_VERB_REF (THIS NONE THIS)", "", "Usage:  &lt;utility object&gt;:parse_verb_ref( STR )", "", "Breaks down STR into the 'object' and 'verb' referenced.", "Note, however, that it does not match anything.  Therefore,", "it returns a LIST of STR object and STR verb."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10120</NAME>
          <VALUE>{"UTILITY OBJECT : _UPTIME (THIS NONE THIS)", "", "Usage:  &lt;utility object&gt;:_uptime( )", "", "Returns current game uptime as a STR in day, hour,", "minute format."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10121</NAME>
          <VALUE>{"UTILITY OBJECT : TRIMLEFT (THIS NONE THIS)", "UTILITY OBJECT : TRIMRIGHT (THIS NONE THIS)", "", "Usage:  &lt;utility object&gt;:trimleft( STR token, [STR, char] )", "        &lt;utility object&gt;:trimright( STR token, [STR, char] )", "", "Returns a string with all whitespace (default) or char removed", "from either the left or right side of TOKEN."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10122</NAME>
          <VALUE>{"TICKER OBJECT : TICK (THIS NONE THIS)", "", "Usage:  &lt;ticker object&gt;:tick( )", "", "Cycles through connected_players() and raises hitpoints", "based on the player's consciousness and the $con_hp_regen_table.", "Then forks for a randomized number of seconds before repeating."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10124</NAME>
          <VALUE>{"ANIMATE : _WIELD (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:_wield( OBJ weapon )", "", "Determines whether or not WEAPON can be wielded.  If not,", "it returns LIST of INT 0 and STR reason.  If WEAPON can", "be wielded, it sets the appropriate properties, sends messages", "to player and audience in player.location, and then returns", "LIST of INT 1 and STR empty."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10127</NAME>
          <VALUE>{"VERBS", "", "Syntax:  verbs &lt;OBJ&gt;", "", "Displays the following information for all verbs on OBJ:", "", "Name(s)", "Arguments", "Owner", "Permissions", "Number of lines of code", "", "See Also:  PROPS"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10128</NAME>
          <VALUE>{"PROPS", "", "Syntax:  props &lt;OBJ&gt;", "", "Displays the following information on OBJ:", "", "Fundamental Object Attributes", "   Player flag, parent, children.", "", "Builtin Properties", "   Owner, location, contents, programmer and wizard", "   flags, and permissions.", "", "Additional Properties (in alphabetical order)", "   In parenthesis, the object on whom the property is", "   defined is displayed.  Following that, the value of", "   the property.  Props with long text are hidden and", "   must be viewed with EVAL.", "", "See Also:  EVAL, VERBS"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10129</NAME>
          <VALUE>{"EVAL", "", "Syntax:  eval OBJ:verb(args)", "         ;    OBJ:verb(args)", "         ;    builtin(args)", "         ;    OBJ.property", "         ;    OBJ.property = &lt;value&gt;", "", "Initiates calls to verbs that cannot be called", "from the command line, including builtin functions.", "", "Can also be used to view and set object properties."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10130</NAME>
          <VALUE>{"ANIMATE : _UNWIELD (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:_unwield( OBJ weapon )", "", "Determines whether or not WEAPON is being wielded.  If not,", "returns INT 0 and STR message.  If so, removes weapon from", "wielded prop and sends appropriate messages to the player", "and any audience in player.location.  It then returns INT 1", "and STR empty."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10131</NAME>
          <VALUE>{"ANIMATE : _REMOVE (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:_remove( OBJ item )", "", "Determines whether or not ITEM is being worn, and whether", "or not animate can hold any more items.  If not, returns INT 0", "and STR message.  If so, removes item from worn prop and sends", "appropriate messages to the animate and any audience in animate.location.", "It then returns INT 1 and STR empty."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10132</NAME>
          <VALUE>{"ANIMATE : _WEAR (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:_wear( OBJ item )", "", "Determines whether or not ITEM is already being worn.  If so,", "returns INT 0 and STR message.  Otherwise, it determines if ITEM", "is in animate's inventory.  If not, attempts to move it there.  If", "successful, sets animate worn prop and sends appropriate messages", "to animate and any audience in animate.location.  It then returns", "INT 1 and STR empty."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10133</NAME>
          <VALUE>{"ANIMATE : _ATTACK (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:_attack( OBJ target )", "", "Determines whether TARGET is appropriate and, if so,", "initiates the combat engine :battle function."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10137</NAME>
          <VALUE>{"ANIMATE : MOBILITY (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:mobility( )", "", "Returns the mobility status of &lt;animate&gt;, either mobile,", "immoble, encumbered, or burdened, depending on consciousness", "and weight carried."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10138</NAME>
          <VALUE>{"ROOM : WILL_ACCEPT (THIS NONE THIS)", "", "Usage:  &lt;room&gt;:will_accept( )", "", "Determines whether or not a room will accept an object", "that wants entrance.  Depends on the room's capacity."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10140</NAME>
          <VALUE>{"SHOWVERB", "", "Syntax:  showverb OBJ:verbname [&lt;token&gt;]", "", "Displays the verb code of the designated verb.  Sending", "anything as a second argument will format the output with", "numbered lines."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10142</NAME>
          <VALUE>{"ANIMATE : SHOW_EQUIPMENT / SHOW_INVENTORY (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:show_equipment( OBJ target )", "        &lt;animate&gt;:show_inventory( OBJ target )", "", "Sends a formatted display of &lt;animate&gt;'s equipment or inventory", "to TARGET."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10143</NAME>
          <VALUE>{"ANIMATE : LOWER_ENDURANCE LOWER_FOCUS (THIS NONE THIS)", "          RAISE_ENDURANCE RAISE_FOCUS (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:lower_endurance( INT decrease )", "        &lt;animate&gt;:raise_endurance( INT increase )", "        &lt;animate&gt;:lower_focus( INT decrease )", "        &lt;animate&gt;:raise_focus( INT increase )", "", "Lowers/raises focus or endurance by INT.  Will never lower", "less than zero, or raise by more than max."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10144</NAME>
          <VALUE>{"ANIMATE : RAISE_HP  LOWER_HP  (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:raise_hp(INT increase )", "        &lt;animate&gt;:lower_hp(INT decrease )", "", "Raise_hp raises &lt;animate&gt;'s hit points by INT, up to", "the value returned by :max_hp(), unless &lt;animate&gt; is", "dead, whereupon it exits with a return value of 0.", "", "Lower_hp lowers &lt;animate&gt;'s hit points by INT.  When", "hit points reach -10 &lt;animate&gt; is declared unconscious", "and appropriate properties are set and messages sent to", "&lt;animate&gt; and everyone else in the room.  When hit points", "drop below -10, &lt;animate&gt; is declared dead and so forth."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10145</NAME>
          <VALUE>{"RMPROP", "", "Syntax:  rmprop &lt;OBJ&gt;.&lt;property&gt;", "", "Removes specified property from specified object.", "Note that an object number must be explicitly used", "since string matching (e.g., \"$room\") has not yet", "been added to this function."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10147</NAME>
          <VALUE>{"ANIMATE : AC (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:ac( )", "", "Calculates the current armor class value of &lt;animate&gt;,", "taking into account base armor class (.base_ac), the", "armor class modifiers of all worn items, dexterity", "bonus, and combat stance."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10148</NAME>
          <VALUE>{"ANIMATE : PATH_VALUE SKILL_VALUE  (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:path_value ( OBJ path )", "        &lt;animate&gt;:skill_value( OBJ skill )", "", "Returns the level &lt;animate&gt; has achieved in the specified path or skill.", "If &lt;animate&gt; has not achieved any level in the specified path or skill,", "returns 0."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10149</NAME>
          <VALUE>{"ANIMATE : CNC CON DEX INT SPD STR  (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:cnc( )", "        &lt;animate&gt;:con( )", "        &lt;animate&gt;:dex( )", "        &lt;animate&gt;:int( )", "        &lt;animate&gt;:spd( )", "        &lt;animate&gt;:str( )", "", "Calculates its respective statistic for &lt;animate&gt;.  This includes", "the base value and any modifiers from effects and items.", "", "Returns INT value."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10150</NAME>
          <VALUE>{"ANIMATE : SET_COMBAT_STANCE  (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:set_combat_stance( STR stance )", "", "Sets &lt;animate&gt;'s combat stance and sends the appropriate message."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10152</NAME>
          <VALUE>{"ANIMATE : INIT_ROLL (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:init_roll( OBJ weapon )", "", "Calculates &lt;animate&gt;'s combat initiative based on its weapon", "speed (if any), posture, encumbrance, and a random factor.", "", "Returns INT initiative roll.", "", "See Also:  INIT_ORDER"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10153</NAME>
          <VALUE>{"COMBAT MANAGER : INIT_ORDER (THIS NONE THIS)", "", "Usage:  &lt;combat manager&gt;:init_order( LIST combatants )", "", "Returns a LIST of OBJs (COMBATANTS) sorted by their initiative roll.", "Assumes that each combatant has .combat_weapon set.", "", "See Also:  INIT_ROLL"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10154</NAME>
          <VALUE>{"ANIMATE : HIT (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:hit( OBJ target )", "", "Selects a wielded weapon and then calculates whether or not it", "strikes TARGET.  A roll of 1 always misses, a roll of 20 is a", "critical hit and does additional damage.  All other rolls are", "modified by TARGET's armor class, the weapon's thac0, &lt;animate&gt;'s", "skill with said weapon, and dexterity.", "", "Messages are sent out to the combatants and the room at large.", "If a hit is successful, the damage is calculated and a call is", "made to :DAMAGE to deal out the hurt on TARGET.", "", "See Also:  DAMAGE"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10155</NAME>
          <VALUE>{"ANIMATE : DAMAGE (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:damage( LIST {STR type, INT quantity} )", "", "Calculates damage-type modifiers and then calls :LOWER_HP to", "carry out the hit point penalty on &lt;animate&gt;.", "", "See Also:  HIT, LOWER_HP"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10156</NAME>
          <VALUE>{"GREP", "", "Syntax:  grep &lt;search string&gt;", "", "Searches the body of every function in the database for the", "specified search string.  Matches are listed in order by", "object and verb name."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10157</NAME>
          <VALUE>{"ANIMATE : GET_TARGET (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:get_target( )", "", "Returns OBJ a randomly-selected victim from &lt;animate&gt;.targets.", "If there are no available targets, returns 0."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10158</NAME>
          <VALUE>{"ROOM CLASS : GET_ANIMATES (THIS NONE THIS)", "", "Usage:  &lt;room&gt;:get_animates( )", "", "Returns a LIST of animates from &lt;room&gt;.contents."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10159</NAME>
          <VALUE>{"WEARABLE CLASS : FITS (THIS NONE THIS)", "", "Usage:  &lt;wearable object&gt;:fits( OBJ animate )", "", "Determines whether &lt;wearable&gt; can be worn by ANIMATE based", "on height and weight.  Returns LIST of INT 0|1 and STR message."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10160</NAME>
          <VALUE>{"HELP DB CLASS : FIND_TOPICS (THIS NONE THIS)", "", "Usage:  &lt;help database&gt;:find_topics( STR topic )", "", "Returns LIST of either exact match or all partial matches of", "specified TOPIC in &lt;database&gt;."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10171</NAME>
          <VALUE>{"ANIMATE : CARRIED_WEIGHT (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:carried_weight( )", "", "Calculates and returns INT total weight of carried objects."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10172</NAME>
          <VALUE>{"ANIMATE : CAN_WEAR (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:can_wear( OBJ wearable item )", "", "Determines whether an item will fit &lt;animate&gt;'s body type, and", "whether or not that particular wearable position is already full.", "Returns LIST of INT 1|0 and STR message, a blank string if item", "can be worn, if not, a message as to why it can't be worn."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10173</NAME>
          <VALUE>{"ANIMATE : CAN_HOLD (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:can_hold( OBJ holdable item )", "", "Determines whether or not &lt;animate&gt; can hold any more", "items.  Returns LIST of INT 1|0 and STR message, a blank", "string if item can be held, otherwise a message as to why not."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10174</NAME>
          <VALUE>{"COMBAT MANAGER : BATTLE (THIS NONE THIS)", "", "Usage:  &lt;combat manager&gt;:battle( OBJ location )", "", "Conducts automated combat actions for combatants in LOCATION.", "", "Selects a combat weapon for each combatant and then determines", "their actions depending on combat stance, sending out appropriate", "messages.  If combat continues, forks itself for $combat.round_length", "seconds, otherwise, exits and sends appropriate message to the room", "that combat has ended."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10175</NAME>
          <VALUE>{"ADDVERB", "", "Syntax:  addverb #&lt;OBJ number&gt;:&lt;verb name&gt;", "", "Adds specified verb to specified object.  Use the builtin", ".program to enter your verb code into the function."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10176</NAME>
          <VALUE>{".PROGRAM", "", "Syntax:  .program &lt;OBJ&gt;:&lt;verb name&gt;", "", "Builtin function to program verb code.  Most useful for", "off-line programming wherein the text of the function is", "dumped in once .program is initiated.", "", "Use a period (\".\") to attempt to compile the function.", "", "Note that functions that do not compile successfully will not", "be saved.  You will have to fix the code offline and re-submit", "it to .program."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10177</NAME>
          <VALUE>{"HELP DB CLASS : ADD_TOPIC (THIS NONE THIS)", "", "Usage:  &lt;help database&gt;:add_topic( STR keyword[, STR article num])", "", "If no existing article number is specified, adds a new topic to", "the database with the given KEYWORD.  Otherwise, it associates", "KEYWORD with the existing article num specified."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10178</NAME>
          <VALUE>{"LOG MANAGER : ADD_ENTRY (THIS NONE THIS)", "", "Usage:  &lt;log manager&gt;:add_entry( STR log name, STR log level, STR message)", "", "If LOG NAME exists, adds the current time, LOG LEVEL, and MESSAGE to the", "appropriate log and sends a message to all objects listed in the log's", "'watchers' list."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10180</NAME>
          <VALUE>{"PLAYER         : WHO_STRING (THIS NONE THIS)", "CODER          : WHO_STRING (THIS NONE THIS)", "ARCHITECT      : WHO_STRING (THIS NONE THIS)", "DUNGEON MASTER : WHO_STRING (THIS NONE THIS)", "", "Usage: &lt;player&gt;:who_string(OBJ viewer)", "", "Called by the command line function WHO.  Viewer is the player", "who is looking at the WHO list.", "", "Creates the formatted string for a player's listing in the WHO", "list.  Whether the player is known to the viewer will determine", "what shows up in the display.", "", "See Also:  WHO"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10184</NAME>
          <VALUE>{"ANIMATE : _SPEAK (THIS NONE THIS)", "", "Usage:  &lt;animate&gt;:_speak( OBJ language )", "", "Called by command line function, $animate:speak.", "", "Determines whether or not &lt;animate&gt; can speak LANGUAGE,", "if so, changes the appropriate property.", "", "Returns LIST of INT 1|0 and STR message indicating either", "success or failure at changing the currently spoken", "language."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10185</NAME>
          <VALUE>{"UTILITY OBJECT | STRING_TO_LIST (THIS NONE THIS)", "", "Usage:  &lt;utility object&gt;:string_to_list( STR )", "", "Returns LIST of words from STRING.", "", "See Also:  LIST_TO_STRING"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10186</NAME>
          <VALUE>{"UTILITY OBJECT | REMOVE (THIS NONE THIS)", "", "Usage:  &lt;utility object&gt;:remove( LIST, ANY, [1|0] )", "", "With no third arg, removes first instance of ANY from LIST.", "If third arg is positive, removes all instances of ANY from LIST."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10187</NAME>
          <VALUE>{"UTILITY OBJECT | STRING_TO_FRAGMENT (THIS NONE THIS)", "", "Usage:  &lt;utility object&gt;:string_to_frag( STRING )", "", "Returns a sentence fragment of STRING.  For use in", "communication verbs."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>index</NAME>
          <VALUE>{{"ancestors", "A10027"}, {"chown", "A10033"}, {"_create", "A10034"}, {"descendants", "A10035"}, {"describe_to", "A10036"}, {"has_property", "A10037"}, {"has_verb", "A10038"}, {"is_a", "A10039"}, {"move_to", "A10041"}, {"properties", "A10042"}, {"recycle", "A10043"}, {"tree", "A10044"}, {"_drop", "A10045"}, {"clear_messages", "A10046"}, {"disconnect", "A10047"}, {"feels", "A10048"}, {"hears", "A10048"}, {"sees", "A10048"}, {"smells", "A10048"}, {"tastes", "A10048"}, {"max_hp", "A10049"}, {"output", "A10050"}, {"output_raw", "A10050"}, {"tell", "A10051"}, {"tell_raw", "A10051"}, {"store_message", "A10052"}, {"view_messages", "A10053"}, {"display_contents", "A10054"}, {"display_exits", "A10055"}, {"enterfunc", "A10057"}, {"match_exit", "A10059"}, {"invoke", "A10063"}, {"do_login_command", "A10065"}, {"checkpoint_finished", "A10066"}, {"allobjects", "A10067"}, {"checkpoint_started", "A10069"}, {"do_prompt_task", "A10071"}, {"get_next_help_id", "A10072"}, {"server_started", "A10073"}, {"shutdown", "A10076"}, {"user_client_disconnected", "A10078"}, {"user_disconnected", "A10079"}, {"user_connected", "A10080"}, {"user_reconnected", "A10082"}, {"welcome_msg", "A10083"}, {"capitalize", "A10084"}, {"dhms", "A10086"}, {"ftime", "A10087"}, {"list_to_string", "A10089"}, {"match", "A10090"}, {"padleft", "A10091"}, {"padright", "A10091"}, {"sort", "A10092"}, {"dhms_str", "A10100"}, {"known_to", "A10103"}, {"pronouns", "A10104"}, {"set_disconnect_info", "A10105"}, {"longest_length", "A10107"}, {"_emote", "A10111"}, {"_say", "A10112"}, {"utilities", "A10116"}, {"utils", "a10116"}, {"parse_dot_ref", "A10117"}, {"parse_prop_ref", "A10118"}, {"parse_verb_ref", "A10119"}, {"_uptime", "A10120"}, {"trimleft", "A10121"}, {"trimright", "a10121"}, {"tick", "A10122"}, {"_wield", "A10124"}, {"verbs", "A10127"}, {"props", "A10128"}, {"eval", "A10129"}, {";", "a10129"}, {"_unwield", "A10130"}, {"_remove", "A10131"}, {"_wear", "A10132"}, {"_attack", "A10133"}, {"mobility", "A10137"}, {"will_accept", "A10138"}, {"showverb", "A10140"}, {"show_equipment", "A10142"}, {"show_inventory", "A10142"}, {"lower_endurance", "A10143"}, {"raise_endurance", "A10143"}, {"lower_focus", "A10143"}, {"raise_focus", "A10143"}, {"max_endurance", "A10049"}, {"max_focus", "A10049"}, {"raise_hp", "A10144"}, {"lower_hp", "A10144"}, {"rmprop", "A10145"}, {"ac", "A10147"}, {"path_value", "A10148"}, {"cnc", "A10149"}, {"con", "A10149"}, {"dex", "A10149"}, {"int", "A10149"}, {"spd", "A10149"}, {"str", "A10149"}, {"skill_value", "A10148"}, {"set_combat_stance", "A10150"}, {"init_roll", "A10152"}, {"init_order", "A10153"}, {"hit", "A10154"}, {"damage", "A10155"}, {"grep", "A10156"}, {"get_target", "A10157"}, {"get_animates", "A10158"}, {"fits", "A10159"}, {"find_topics", "A10160"}, {"carried_weight", "A10171"}, {"can_wear", "A10172"}, {"can_hold", "A10173"}, {"battle", "A10174"}, {"addverb", "A10175"}, {".program", "A10176"}, {"add_topic", "A10177"}, {"add_entry", "A10178"}, {"who_string", "A10180"}, {"_speak", "A10184"}, {"string_to_list", "A10185"}, {"remove", "A10186"}, {"string_to_fragment", "A10187"}}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj30" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
        <NAME>Architect Help Database</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10095</NAME>
          <VALUE>{"CHANNEL  CHANNELS", "", "Syntax: channel", "        channel &lt;channel&gt;", "", "With no arguments, displays the current status of your available", "channels as well as a list of all players listening to that", "channel.  Given a channel name as an argument, toggles that", "channel on or off.", "", "The following channels are available:", "  ADMIN   ---&gt;  Administrators", "  DESIGN  ---&gt;  Architects, Coders, Dungeon Masters", "  DM      ---&gt;  Dungeon Masters", "", "If you send a message through a channel that you have toggled off,", "the channel will be turned on and the message sent.", "", "A Dungeon Master with an important announcement may toggle your", "channel on in order to make sure you hear the message.", "", "All channels can be turned off simultaneously with the SILENT", "command.", "", "These commands are available only to players who have access to at", "least one channel.", "", "See Also:  ADMIN, DESIGN, DM, SILENT"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10096</NAME>
          <VALUE>{"DESIGN", "", "Syntax: design &lt;message&gt;", "", "Sends a message to all Game Designers currently listening", "to the channel.  If you send a message through DESIGN when", "you have it toggled off, the channel will be turned on and", "the message sent.", "", "Color can be used in messages.", "", "Dungeon Masters with important announcements may toggle", "this channel on in order to make sure you hear the message.", "", "To see who is listening to this channel, use the CHANNEL", "command.", "", "See Also:  CHANNEL, COLOR, SILENT"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10097</NAME>
          <VALUE>{"SILENT", "", "Syntax: silent", "", "Toggles all available channels off.", "", "This command is only available to players with access to", "at least one channel.", "", "See Also:  CHANNEL"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10146</NAME>
          <VALUE>{"DELETE  EDIT  EXIT  INSERT  LIST", "", "Syntax:  delete &lt;line number&gt;", "         insert &lt;line number&gt;", "         edit   &lt;OBJ.property&gt;", "         exit", "         list", "", "The editor is invoked with the EDIT command when an object property", "is specified.", "", "LIST displays the current buffer;  INSERT changes your current", "insertion point;  DELETE deletes the specified line number.", "", "EXIT leaves the editor.  Note that you must first exit the editor", "before you can edit a new property.", "", "Note that DELETE is not reversible and there is no save command.", "What goes into the editor is what gets saved to the property, instantly."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>index</NAME>
          <VALUE>{{"channels", "A10095"}, {"design", "A10096"}, {"silent", "A10097"}, {"editor", "A10146"}, {"delete", "A10146"}, {"exit", "A10146"}, {"insert", "A10146"}, {"list", "A10146"}}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj31" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
        <NAME>Dungeon Master Help Database</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10020</NAME>
          <VALUE>{"#", "", "Syntax: #&lt;number&gt;", "", "Prints the name of the object specified by &lt;number&gt; to the screen.", "Saves you the trouble of eval'ing (e.g. eval #4.name)."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10021</NAME>
          <VALUE>{"ADDPROP", "", "Syntax: addprop #&lt;number&gt;.&lt;propname&gt;", "", "Adds property &lt;propname&gt; to object #&lt;number&gt; with a value of zero.", "Use eval to set the initial value of the property."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10022</NAME>
          <VALUE>{"CHECKPOINT", "", "Syntax: checkpoint", "", "Calls the builtin function dump_database(), which writes out", "the database to disk.  The checkpoint command also makes an entry", "in the system log."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10024</NAME>
          <VALUE>{"DM", "", "Syntax: dm &lt;message&gt;", "", "Sends a message to all Dungeon Masters.  Color can be used.", "", "Can be toggled with the CHANNEL command.  If you send a", "message to this channel while it is toggled off, the", "channel will be turned on and your message sent.", "", "For global messages, use 'MSG all &lt;...&gt;'.", "", "See Also:  CHANNEL, COLOR, MSG, SILENT"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10025</NAME>
          <VALUE>{"TIME", "", "Syntax: time", "", "Displays current machine time."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10068</NAME>
          <VALUE>{"CREATE", "", "Syntax: create &lt;new object name&gt; from &lt;parent object&gt;", "", "Creates a new object from a fertile object (class)."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10070</NAME>
          <VALUE>{"FORKED", "", "Syntax: forked", "", "Displays a list of all tasks currently queued for execution.", "Listed for each task is the task ID, owner, execution time,", "verb name and line number, and the object the verb is defined on."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10074</NAME>
          <VALUE>{"DUNGEON MASTER : MSG_ALL (THIS NONE THIS)", "", "Usage: &lt;dungeon master&gt;:msg_all(STR argstr)", "", "Called by the command line function MSG when the argument", "all (or global) is sent by a Dungeon Master.", "", "Sends the message to every connected player.", "", "See Also:  MSG"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10075</NAME>
          <VALUE>{"SHOWLOG", "", "Syntax: showlog", "        showlog &lt;log name&gt;", "", "With no arguments, displays a list of available logs.  When a", "log name is specified, the contents of that log are displayed", "with time stamps and color-coded flags.", "", "See Also:  TAILLOG"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10077</NAME>
          <VALUE>{"SHUTDOWN", "", "Syntax: shutdown &lt;delay&gt; [reason]", "", "Shutsdown the server after the specified delay in minutes.", "An optional text message can also be used.  This message will", "be displayed to every connected player.  The delay time and", "message are sent to the builtin $shutdown which manages the", "actual shutdown procedure."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10081</NAME>
          <VALUE>{"TAILLOG", "", "Syntax:  taillog", "         taillog &lt;log name&gt; [number of lines]", "", "With no arguments, displays a list of available logs.  When a", "log name is specified, the last 25 lines of that log will be", "displayed by default.  Optionally, the number of lines to", "display can be specified on the command line.", "", "See Also:  SHOWLOG"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10098</NAME>
          <VALUE>{"DUNGEON MASTER : FORCE_CHANNEL (THIS NONE THIS)", "", "Usage: &lt;DM&gt;:force_channel(STR channel)", "", "Called by the command line function CHANNEL when given", "the 'force' argument and the name of a channel.  Only", "usable by Dungeon Masters.", "", "Turns on the target channel for every connected player", "who is capable of listening to it.  This is useful for", "making announcements.", "", "See Also:  CHANNELS"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10125</NAME>
          <VALUE>{"MISSING", "", "Syntax:  missing", "", "Displays a list of approximately all functions that", "do not currently have help files associated with them.", "Note that this is a very rough list.  Functions with", "more than one name will show up as having no help", "file.  Some objects (namely #0) are not searched for", "functions with missing help files.", "", "It's in your best interest to verify that a function", "really doesn't have a help file before you go and", "write one.", "", "This command is available only to Dungeon Masters. At", "some point it will be formatted and made more useful."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10135</NAME>
          <VALUE>{"MKCORE", "", "Syntax:  mkcore", "", "Recycles all non-core objects and clears all log files", "in order to pare down the database into a usable core.", "", "Relies on confirmation dialog, password, and $safety_lock", "to prevent accidental corification of a database."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10139</NAME>
          <VALUE>{"HOME", "", "Syntax:  home", "", "Shortcut verb for Dungeon Masters to return themselves", "to the room designated in their .home property."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10151</NAME>
          <VALUE>{"RESET", "", "Usage:  reset here", "", "Quick way for DMs doing combat testing to reset a room's", "combatants."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>index</NAME>
          <VALUE>{{"#", "A10020"}, {"addprop", "A10021"}, {"checkpoint", "A10022"}, {"dm", "A10024"}, {"time", "A10025"}, {"create", "A10068"}, {"forked", "A10070"}, {"msg_all", "A10074"}, {"showlog", "A10075"}, {"shutdown", "A10077"}, {"taillog", "A10081"}, {"force_channel", "A10098"}, {"missing", "A10125"}, {"mkcore", "A10135"}, {"home", "A10139"}, {"reset", "A10151"}}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj53" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
        <NAME>NPC Help Database</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>index</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj54" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
        <NAME>Animate Help Database</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10023</NAME>
          <VALUE>{"WHO", "", "Syntax: who", "", "Displays a list of currently connected players.", "", "Dungeon Masters are listed first, followed by", "Architects, Coders, players you have met,", "and then those who are unknown to you.", "", "The following attributes are listed for each player:", "species, apparent gender, name, and any relevant status flags.", "", "Current flags:", "", "%C[%cAFK%C]%w         =&gt;  Player is away from keyboard.", "%G[%gediting%G]%w     =&gt;  Player is in the editor.", "%M[%midle%M]%w        =&gt;  Player is idle:        idle for 10-30 minutes.", "%M[%mvege%M]%w        =&gt;  Player is vegetating:  idle for 30-60 minutes.", "%M[%mdorm%M]%w        =&gt;  Player is dormant:     idle at least one hour.", "%Y+Admin+%w       =&gt;  Player is an administrator.", "", "Game statistics are listed at the bottom.", "", "See Also:  AFK, INFO"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10026</NAME>
          <VALUE>{"UPTIME", "", "Syntax: uptime", "", "Displays the current server uptime since last restart."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10028</NAME>
          <VALUE>{"MSG MESSAGE", "", "Syntax: msg", "        msg view    | show", "        msg delete  | clear", "        msg &lt;player&gt; &lt;message&gt;", "", "Players can use MSG to send messages to an administrator if they", "are in need of assistance.  Players cannot send messages to any", "player not flagged as an administrator in the WHO display.", "", "Administrators can use MSG to send messages to any player.", "", "If the message recipient is not currently connected, the message", "will be logged and time-stamped.", "", "NOTE: &lt;player&gt; must be the player's FULL NAME.  Partial matches", "will not be accepted.", "", "Color can be added to messages.", "", "Logged messages can be viewed with either MSG view, or MSG show,", "and deleted with either MSG delete, or MSG clear.", "", "See Also:  WHO, COLOR"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10029</NAME>
          <VALUE>{"PROMPT", "", "Syntax: prompt", "        prompt default", "        prompt &lt;string&gt;", "", "With no arguments, PROMPT displays the current prompt string.", "Default will set the prompt to the default prompt for your current", "THEME.", "", "Text, color, and player variables can all be added to your prompt.", "", "Currently accepted player variables are as follows:", "", "%n  = player name", "%hp = current hit points", "%HP = max hit points", "", "A list of currently accepted color values can be found under help COLOR.", "", "An example of a prompt string is \"%^B[%^c%hp%^B/%^c%HP%^B]%^w \"", "", "This will display current hit points and max hit points in dark cyan", "surrounded by bright blue brackets:", "", "     %B[%c35%B/%c56%B]%w", "", "The %^w at the end resets the text color to plain white.", "", "The prompt string does not have to be in quotations.  However, as in", "this example, if you want a space in between your prompt and the current", "cursor position, the prompt string must be in quotation marks.", "", "See Also:  COLOR, THEMES"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10030</NAME>
          <VALUE>{"COLOR", "", "Syntax: COLOR", "", "Toggles ANSI color on and off.", "", "Players can use color in a variety of ways, including in their", "PROMPT and when speaking via the SAY command.", "", "The following color codes are available:", "", "%^B = %Bbright blue%w", "%^b = %bdark blue%w", "%^G = %Gbright green%w", "%^g = %gdark green%w", "%^C = %Cbright cyan%w", "%^c = %cdark cyan%w", "%^R = %Rbright red%w", "%^r = %rdark red%w", "%^M = %Mbright magenta%w", "%^m = %mdark magenta%w", "%^Y = %Ybright yellow%w", "%^y = %ydark yellow%w", "%^W = %Wbright white%w", "%^w = %wplain white%w", "", "See Also:  PROMPT, SAY"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10031</NAME>
          <VALUE>{"%WHELP TOPICS", "", "%CGeneral Information:%G", "INFO", "PASSWORD", "QUIT", "WHO", "", "%CCommunication:%G", "AFK", "MSG", "SAY", "", "%CFormatting:%G", "COLOR", "PROMPT", "THEMES", "", "%CMovement:%G", "DROP", "GET", "INVENTORY", "LOOK", "MOVEMENT", "PUT", "", "%WFor assistance with an immediate in-game issue, please contact an", "Administrator with the MSG command.  Administrators are flagged", "as %Y+Admin+ %Win the WHO list.", "", "%WSee Also:  MSG, WHO%w"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10032</NAME>
          <VALUE>{"SAY", "", "Syntax: say &lt;message&gt;", "", "Displays a message to everyone in the room who is capable of hearing", "speech.  Note that this excludes players and NPCs who are sleeping,", "dead, unconscious, or deaf.", "", "Deaf players may or may not notice that someone spoke.", "", "Players and NPCs who cannot understand the language you are currently", "speaking will recognize that you spoke in that language but will not", "understand what was said.", "", "Color can be added to spoken messages.", "", "See Also:  COLOR, SPEAK"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10056</NAME>
          <VALUE>{"DROP", "", "Syntax: drop &lt;item&gt;", "", "Removes an item from your inventory and puts it into the room", "you are currently occupying.", "", "See Also: GET"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10058</NAME>
          <VALUE>{"GET", "", "Syntax:  get &lt;item&gt;", "         get &lt;item&gt; from &lt;container&gt;", "", "Allows you to pick up an item from the ground or from within", "a container on the ground or a container in your inventory.", "", "See Also:  DROP"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10060</NAME>
          <VALUE>{"INVENTORY", "", "Syntax: inventory", "", "Displays a list of items currently in your inventory.", "", "See Also:  DROP, GET, LOOK, PUT"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10061</NAME>
          <VALUE>{"LOOK", "", "Syntax:  look", "         look in &lt;container&gt;", "         look [at] &lt;item or player&gt;", "", "With no arguments, LOOK displays the description of your", "current location.  You can also look into a container or at", "items (including containers) and people.", "", "See Also:  INVENTORY"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10062</NAME>
          <VALUE>{"PUT", "", "Syntax:  put &lt;item&gt; in/into &lt;container&gt;", "", "Takes an item from your inventory or the ground and puts it into", "a container that is in your inventory or on the ground.", "", "See Also:  GET, INVENTORY"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10064</NAME>
          <VALUE>{"QUIT", "", "Syntax: quit", "", "Disconnects you from the game."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10093</NAME>
          <VALUE>{"MOVEMENT NORTH SOUTH EAST WEST UP DOWN", "", "Syntax:  north | south | east | west | up | down", "", "Moves your character through an exit in the direction", "indicated.  All commands may be abbreviated to their", "first letter."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10099</NAME>
          <VALUE>{"AFK AWAY", "", "Syntax: afk", "", "Toggles your 'away from keyboard' status.   This flag will", "show up in your WHO listing and your prompt.", "", "See Also:  WHO"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10102</NAME>
          <VALUE>{"INFO INFORMATION", "", "Syntax: info &lt;player name&gt;", "", "Displays any available information on the", "player in question.  Note that partial", "matches are not allowed (i.e., the player's", "full name must be given).", "", "Information includes name, species, gender,", "game designer and admin status (if", "applicable), idle time, afk, and", "connect status.", "", "See Also:  AFK, WHO"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10106</NAME>
          <VALUE>{"KNOWN", "", "Syntax:  known", "", "Displays the name, gender, and species of every", "player you know.", "", "Since they are known to every player, game designers", "and administrators are not displayed.", "", "See Also:  ADMINS, INTRO, NAME, WHO"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10110</NAME>
          <VALUE>{"EMOTE", "", "Syntax:  emote &lt;string&gt;", "         : &lt;string&gt;", "", "Displays your name, followed by &lt;string&gt;, to the", "entire room.", "", "See Also:  SAY"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10123</NAME>
          <VALUE>{"WIELD  UNWIELD", "", "Syntax:  wield   &lt;weapon&gt;", "         unwield &lt;weapon&gt;", "", "Allows you to wield or unwield a one- or two-handed weapon.", "Two one-handed weapons may be wielded at the same time.", "", "See Also:  DROP, GET, INVENTORY, PUT"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10126</NAME>
          <VALUE>{"WEAR  REMOVE", "", "Syntax:  wear   &lt;item&gt;", "         remove &lt;item&gt;", "", "Allows you to wear and remove equipment from either", "your inventory or the ground.", "", "See Also:  DROP, GET, INVENTORY, PUT, WIELD"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10134</NAME>
          <VALUE>{"ATTACK DEFEND FLEE PASSIVE STANCE", "", "Syntax:  attack [&lt;target&gt;]", "         defend", "         flee", "         passive", "", "Your combat stance affects your armor class and your response", "to attacks.  You can change your stance at any time, in or out", "of battle.", "", "ATTACK:  When used with a target, ATTACK launches you into battle", "with your chosen opponent.  When used alone, it sets your combat", "stance to attack, enabling you to automatically retaliate if", "someone initiates combat with you.", "", "DEFEND:  Puts you into a defensive combat stance, lowering your", "armor class but preventing you from committing offensive attacks", "during combat.", "", "FLEE:    Prepares you to take flight as soon as anyone attacks you,", "even in the middle of battle.", "", "PASSIVE: Your armor class takes a heavy penalty and you will neither", "defend yourself nor retaliate during combat."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10136</NAME>
          <VALUE>{"STATS SCORE", "", "Syntax:  stats", "         score", "", "Displays all statistics you know about your character.  This", "includes personal information such as species, age, and gender,", "as well as combat-related stats like armor class, hit points, and", "stance.", "", "In addition, any skills you have will be listed at the bottom along", "with your current skill level.  Any paths you follow will be listed", "to the right of your skills.", "", "See Also:  ATTRIBUTES"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10141</NAME>
          <VALUE>{"EQUIPMENT", "", "Syntax:  equipment", "", "Displays any equipment you are wearing.  Note that", "wielded weapons show up in your INVENTORY screen.", "", "See Also:  INVENTORY, REMOVE, WEAR"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10161</NAME>
          <VALUE>{"CAST", "", "Syntax:  cast &lt;spell&gt; [at &lt;target&gt;]", "", "Begins the process of incanting a spell.  Your ability to", "cast spells depends on your spellcasting skill, your spell", "paths, and your amount of focus and endurance.", "", "See Also:  ENDURANCE, FOCUS"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10162</NAME>
          <VALUE>{"%WCONCENTRATION  :  %YAbility to maintain and direct your attention.", "                  %GAffects ability to attain high levels of mastery", "                  in particular skills.", "", "%WCONSTITUTION   :  %YPhysical hardiness.", "                  %GAffects initial hit point bonus and hit point recovery.", "", "%WDEXTERITY      :  %YLimberness, flexibilty, and reflexes.", "                  %GAffects armor class and ability to strike opponents.", "", "%WENDURANCE      :  %YPhysical stamina.", "                  %GStamina points that decrease when you are engaged in", "                  a physically-draining activity such as traveling, combat,", "                  or spell casting, and increase when you rest or sleep.", "", "%WFOCUS          :  %YMental stamina.", "                  %GStamina points that decrease when you are engaged in", "                  a mentally-draining activity such as spell casting or", "                  study.", "", "%WINTELLIGENCE   :  %YMental acuity.", "                  %GAffects ability to attain high levels of mastery in", "                  skills relying on mental comprehension.", "", "%WSPEED          :  %YSwiftness.", "                  %GAffects combat initiative, attacks per round, and movement", "                  rate.", "", "%WSTRENGTH       :  %YPhysical power.", "                  %GAffects combat damage and maximum carried weight.", "", "%WHIT POINTS     :  %YVitality.", "                  %GHealth points that decrease when you are damaged, and", "                  increase when you sleep or are healed.", "", "%CFor more information on the workings of these attributes, please see the", "additional help files listed below.", "", "%WSee Also:  CONCENTRATION, CONSTITUTION, DEXTERITY, ENDURANCE, FOCUS,", "           HIT POINTS, INTELLIGENCE, SPEED, STATS, STRENGTH%w"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10163</NAME>
          <VALUE>{"%WCONCENTRATION", "", "%YAbility to maintain and direct your attention.", "", "%GAffects ability to attain high levels of mastery in particular skills,", "including certain weapon and other combat-related proficiencies, as well as", "mental skills such as spell casting.", "", "%WSee Also:  ATTRIBUTES"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10164</NAME>
          <VALUE>{"%WCONSTITUTION", "", "%YPhysical hardiness.", "", "%GAffects initial hit point bonus and hit point recovery.", "", "%WSee Also:  ATTRIBUTES, HITPOINTS"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10165</NAME>
          <VALUE>{"%WDEXTERITY", "", "%YLimberness, flexibilty, and reflexes.", "", "%GAffects armor class and ability to strike opponents.  Large species", "tend to be less dextrous than smaller, more mobile species.", "", "%WSee Also:  ATTRIBUTES"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10166</NAME>
          <VALUE>{"%WFOCUS", "", "%YMental stamina.", "", "%GStamina points that decrease when you are engaged in", "a mentally-draining activity such as spell casting or study.", "", "As your proficiency in a particular spell-casting path increases,", "the amount of focus drained by casting those spells decreases.", "", "%WSee Also:  ATTRIBUTES, CAST"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10167</NAME>
          <VALUE>{"%WINTELLIGENCE", "", "%YMental acuity.", "", "%GAffects ability to attain high levels of mastery in skills", "relying on mental comprehension.  These skills are not limited", "to spell casting.", "", "%WSee Also:  ATTRIBUTES, CAST"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10168</NAME>
          <VALUE>{"%WSPEED", "", "%YSwiftness.", "", "%GAffects combat initiative, attacks per round, and movement rate.", "", "%WSee Also:  ATTRIBUTES"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10169</NAME>
          <VALUE>{"%WSTRENGTH", "", "%YPhysical power.", "", "%GAffects combat damage and maximum carried weight.", "", "%WSee Also:  ATTRIBUTES"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10170</NAME>
          <VALUE>{"%WHIT POINTS", "", "%YVitality.", "", "%GHealth points that decrease when you are damaged, and", "increase when you sleep or are healed.", "", "Sleeping in a proper bed will increase the rate at which your", "hit points regenerate.", "", "%WSee Also:  ATTRIBUTES"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10179</NAME>
          <VALUE>{"%WENDURANCE", "", "%YPhysical stamina.", "", "%GStamina points that decrease when you are engaged in", "a physically-draining activity such as traveling, combat,", "or spell casting, and increase when you rest or sleep.", "", "Resting or sleeping in a proper bed will increase the rate", "at which you recover your endurance points.", "", "%WSee Also:  ATTRIBUTES%w"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10181</NAME>
          <VALUE>{"ADMINS", "", "Syntax:  admins", "", "Displays a list of all game administrators who are", "currently connected, along with their idle time,", "followed by a list of admins who are not connected.", "", "See Also:  WHO"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10182</NAME>
          <VALUE>{"ADMINISTRATOR", "", "Syntax: admin &lt;message&gt;", "", "Channel used by game administrators.  Color can be used.", "", "Can be toggled on and off with the CHANNEL command.  If you", "send a message to this channel when it is toggled off, the", "channel will be turned on and the message sent.", "", "See Also:  CHANNEL, COLOR, SILENT"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>A10183</NAME>
          <VALUE>{"SPEAK", "", "Syntax:  speak [&lt;language&gt;]", "", "With no arguments, displays which language you are currently", "speaking and, if applicable, which others you can speak.", "", "Change your currently spoken language by naming that language", "on the command line.", "", "See Also:  SAY"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>index</NAME>
          <VALUE>{{"who", "A10023"}, {"uptime", "A10026"}, {"msg", "A10028"}, {"prompt", "A10029"}, {"ansi", "a10030"}, {"help", "A10031"}, {"say", "A10032"}, {"message", "a10028"}, {"drop", "A10056"}, {"get", "A10058"}, {"inventory", "A10060"}, {"look", "A10061"}, {"put", "A10062"}, {"quit", "A10064"}, {"movement", "A10093"}, {"north", "a10093"}, {"south", "a10093"}, {"east", "a10093"}, {"west", "a10093"}, {"up", "a10093"}, {"down", "a10093"}, {"colors", "A10030"}, {"afk", "A10099"}, {"away", "A10099"}, {"information", "A10102"}, {"known", "A10106"}, {"emote", "A10110"}, {"wield", "A10123"}, {"unwield", "a10123"}, {"wear", "A10126"}, {"remove", "A10126"}, {":", "A10110"}, {"attack", "A10134"}, {"defend", "A10134"}, {"flee", "A10134"}, {"passive", "A10134"}, {"stance", "A10134"}, {"statistics", "A10136"}, {"stats", "A10136"}, {"score", "A10136"}, {"equipment", "A10141"}, {"cast", "A10161"}, {"attributes", "A10162"}, {"concentration", "A10163"}, {"constitution", "A10164"}, {"dexterity", "A10165"}, {"focus", "A10166"}, {"intelligence", "A10167"}, {"speed", "A10168"}, {"strength", "A10169"}, {"hitpoints", "A10170"}, {"hp", "a10170"}, {"endurance", "A10179"}, {"admins", "A10181"}, {"administrator", "A10182"}, {"speak", "A10183"}}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
    </OBJECT>
    <OBJECT ID="obj16" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Account Class</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj18" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
      <NAME>General Knowledge Object</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj20"  OWNER="obj10" LOCATION="obj-1">
      <NAME>Utility Object</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>parse_prop_ref</NAME>
        <CODE>
          " #20:parse_prop_ref this none this";
          prop_ref = args[1];
          dot = index(prop_ref, ".");
          if (!dot)
          if (prop_ref[1] != "$")
          return 0;
          else
          return {"#0", prop_ref[2..$]};
          endif
          else
          object = prop_ref[1..dot - 1];
          prop = prop_ref[dot + 1..$];
          if (!(object &amp;&amp; prop))
          return 0;
          elseif (object[1] != "$")
          return {object, prop};
          else
          sysprop = object[2..$];
          if (!$has_prop(sysprop))
          return 0;
          else
          object = #0.(sysprop);
          if (typeof(object) != OBJ)
          return 0;
          else
          object = tostr(object);
          return {object, prop};
          endif
          endif
          endif
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>cap*italize</NAME>
        <CODE>
          " #20:capitalize(STR) this none this ";
          if ((string = args[1]) &amp;&amp; (i = index("abcdefghijklmnopqrstuvwxyz", string[1], 1)))
          string[1] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"[i];
          endif
          return string;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>triml*eft</NAME>
        <CODE>
          "$utils:triml*eft this none this";
          "copied from LambdaMOO";
          {string, ?what = " "} = args;
          index = match(string, tostr("[^", what, "]%|$"));
          return string[index[1]..$];
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>list_to_str*ing</NAME>
        <CODE>
          "$utils:list_to_str*ing this none this";
          {thelist, ?separator = "", ?conj = ""} = args;
          if (thelist == {})
          return "";
          else
          if (length(thelist) == 1)
          return tostr(thelist[1]);
          else
          if (separator == "")
          return tostr(@thelist);
          else
          if (conj)
          if (length(thelist) == 2)
          result = (((tostr(thelist[1]) + " ") + conj) + " ") + tostr(thelist[2]);
          return result;
          else
          thelist[$] = (conj + " ") + tostr(thelist[$]);
          endif
          endif
          result = tostr(thelist[1]);
          for item in (listdelete(thelist, 1))
          result = tostr(result, separator, item);
          endfor
          return result;
          endif
          endif
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>trimr*ight</NAME>
        <CODE>
          "$utils:trimr*ight this none this";
          "Copied from LambdaMOO";
          {string, ?what = " "} = args;
          return string[1..rmatch(string, tostr("[^", what, "]%|^"))[2]];
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>parse_verb_ref</NAME>
        <CODE>
          "$utils:parse_verb_ref this none this";
          verb_ref = args[1];
          colon = index(verb_ref, ":");
          if (!colon)
          if (verb_ref[1] != "$")
          return 0;
          else
          return {"#0", verb_ref[2..$]};
          endif
          else
          object = verb_ref[1..colon - 1];
          verbname = verb_ref[colon + 1..$];
          if (!(object &amp;&amp; verbname))
          return 0;
          elseif (object[1] != "$")
          return {object, verbname};
          else
          prop_name = object[2..$];
          if (!$has_prop(prop_name))
          return 0;
          else
          object = #0.(prop_name);
          if (typeof(object) != OBJ)
          return 0;
          else
          object = tostr(object);
          return {object, verbname};
          endif
          endif
          endif
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>sort</NAME>
        <CODE>
          "quick sort algorithm";
          sortlist = args[1];
          if (length(sortlist) &lt;= 1)
          return sortlist;
          elseif (length(sortlist) == 2)
          return (sortlist[1] &lt; sortlist[2]) ? {sortlist[1], sortlist[2]} | {sortlist[2], sortlist[1]};
          else
          "partition into left and right";
          left = {};
          right = {};
          pivotlist = {};
          pivotindex = random(length(sortlist));
          pivotitem = sortlist[pivotindex];
          for each in (sortlist)
          if (each &lt; pivotitem)
          left = {@left, each};
          elseif (each &gt; pivotitem)
          right = {@right, each};
          else
          pivotlist = {@pivotlist, each};
          endif
          endfor
          "sort each side";
          sortedleft = $utils:sort(left);
          sortedright = $utils:sort(right);
          return {@sortedleft, @pivotlist, @sortedright};
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>match</NAME>
        <CODE>
          "#20:match(str, objlist, ?exact, ?nameonly) - returns a list of objs from args[2] that";
          "are named or aliased to args[1].  args[3] if true forces a full match. args[4] will";
          "if true match only to object's name";
          "if no match, returns empty list.";
          {token, objlist, ?exact = 0, ?nameonly = 0} = args;
          count = 0;
          count_and_item = $utils:parse_dot_ref(token);
          if (count_and_item)
          {count, item} = count_and_item;
          endif
          if (count &gt; 0)
          token = item;
          endif
          matchlist = {};
          for each in (objlist)
          if (!(each in matchlist))
          doesmatch = 0;
          if (nameonly)
          names = {each.name};
          else
          names = {each.name, @each.aliases};
          endif
          for name in (names)
          if (exact)
          doesmatch = doesmatch || (token == name);
          else
          doesmatch = doesmatch || (index(name, token) == 1);
          endif
          endfor
          if (doesmatch)
          matchlist = {@matchlist, each};
          endif
          endif
          endfor
          if (count == 0)
          return matchlist;
          elseif (count &lt;= length(matchlist))
          return {matchlist[count]};
          else
          return {};
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>parse_dot_ref</NAME>
        <CODE>
          "$utils:parse_dot_ref(str) returns {int count, str}";
          "used for dot matching... 2.sword, etc.";
          {prop_ref} = args;
          dot = index(prop_ref, ".");
          if (dot &gt; 1)
          NUM = prop_ref[1..dot - 1];
          token = prop_ref[dot + 1..$];
          return {tonum(NUM), token};
          else
          return 0;
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>padl*eft</NAME>
        <CODE>
          "$utils:padleft(str token, int length, str char)";
          {token, len, ?char = " "} = args;
          token = tostr(token);
          needed = len - length(token);
          times = 1 + (needed / length(char));
          for x in [1..times]
          token = char + token;
          endfor
          newlen = length(token);
          if (newlen != len)
          token = token[(newlen - len) + 1..newlen];
          endif
          return token;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>padr*ight</NAME>
        <CODE>
          "$utils:padright(str token, int length, str char)";
          {token, len, ?char = " "} = args;
          token = tostr(token);
          needed = len - length(token);
          times = 1 + (needed / length(char));
          for x in [1..times]
          token = token + char;
          endfor
          newlen = length(token);
          if (newlen != len)
          token = token[1..len];
          endif
          return token;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>dhms</NAME>
        <CODE>
          "$utils:dhms(seconds)";
          "returns {days, hours, minutes, seconds}";
          {seconds} = args;
          days = seconds / 86400;
          seconds = seconds % 86400;
          hours = seconds / 3600;
          seconds = seconds % 3600;
          minutes = seconds / 60;
          seconds = seconds % 60;
          return {days, hours, minutes, seconds};
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>_uptime</NAME>
        <CODE>
          "$utils:_uptime() this none this";
          times = $utils:dhms(time() - $start_time);
          uptime_str = $utils:dhms_str(times);
          return uptime_str;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>ftime</NAME>
        <CODE>
          "$utils:ftime this none this";
          "format any string in ctime format";
          ctime = args[1];
          _day = ctime[1..3];
          _mo = ctime[5..7];
          _hour = ctime[12..13];
          daynum = ctime[9..10];
          min = ctime[15..16];
          daysav = ctime[26..28];
          day = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}[_day in {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"}];
          mo = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"}[_mo in {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}];
          "switch to standard time format";
          if (tonum(_hour) &gt; 11)
          hour = tonum(_hour) - 12;
          ampm = "pm";
          else
          hour = tonum(_hour);
          ampm = "am";
          endif
          hour = tostr(hour);
          if (hour == "0")
          hour = "12";
          endif
          "set ordinal notation";
          x = daynum in {" 1", "21", "31", " 2", "22", " 3", "23"};
          if (x)
          ord = {"st", "st", "st", "nd", "nd", "rd", "rd"}[x];
          else
          ord = "th";
          endif
          "eliminate extra spaces";
          if (daynum[1] == " ")
          daynum = daynum[2];
          endif
          new_string = (((((((((((day + ", ") + mo) + " ") + daynum) + ord) + ", ") + hour) + ":") + min) + ampm) + " ") + daysav;
          return new_string;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>dhms_str</NAME>
        <CODE>
          "$utils:dhms_str() this none this";
          times = args[1];
          days = times[1];
          daystr = (days == 1) ? " day, " | " days, ";
          day_var = (days == 0) ? "" | (tostr(days) + daystr);
          hours = times[2];
          hourstr = (hours == 1) ? " hour, " | " hours, ";
          hour_var = ((days == 0) &amp;&amp; (hours == 0)) ? "" | (tostr(hours) + hourstr);
          mins = times[3];
          minstr = (mins == 1) ? " minute." | " minutes.";
          min_var = tostr(mins) + minstr;
          final_str = (day_var + hour_var) + min_var;
          return final_str;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>longest*_length</NAME>
        <CODE>
          "$utils:longest*_length this none this";
          "If more than one is longest, returns length of first.";
          thelist = args[1];
          longest = 0;
          for x in (thelist)
          xlen = length(x);
          if (xlen &gt; longest)
          longest = xlen;
          endif
          endfor
          return longest;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>string_to_list</NAME>
        <CODE>
          "$utils:string_to_list this none this";
          string = args[1];
          newlist = {};
          if (length(string))
          while (ref = index(string, " "))
          newlist = {@newlist, string[1..ref - 1]};
          string = string[ref + 1..$];
          endwhile
          newlist = {@newlist, string};
          endif
          "Clear out any doubled spaces that ended up in the list.";
          newlist = $utils:remove(newlist, "", 1);
          return newlist;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>rem*ove</NAME>
        <CODE>
          "$utils:remove this none this";
          {thelist, what, ?all = 0} = args;
          if (all)
          while (what in thelist)
          thelist = setremove(thelist, what);
          endwhile
          else
          thelist = setremove(thelist, what);
          endif
          return thelist;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>string_to_frag*ment</NAME>
        <CODE>
          "$utils:string_to_frag*ment this none this";
          words = $utils:string_to_list(args[1]);
          len = length(words);
          first = random(len);
          rest = len - first;
          if (!rest)
          frag = words[first];
          else
          newlist = {};
          more = random(rest + 1) - 1;
          count = first;
          while (count &lt;= (first + more))
          newlist = {@newlist, words[count]};
          count = count + 1;
          endwhile
          frag = $utils:list_to_string(newlist, " ");
          endif
          return frag;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>match_dollar_ref</NAME>
        <CODE>
          "$utils:match_dollar_ref this none this";
          "matches a $ref to the object it evals to";
          dollar_ref = args[1];
          if (dollar_ref[1] != "$")
          return 0;
          else
          try
          xobj = #0.(dollar_ref[2..$]);
          if (typeof(xobj) == OBJ)
          return xobj;
          else
          return 0;
          endif
          except (ANY)
          return 0;
          endtry
          endif
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>height_str</NAME>
        <CODE>
          "$utils:height_str this none this";
          {height} = args;
          height_str = ((tostr(height / 12) + "' ") + tostr(height % 12)) + "\"";
          return height_str;
        </CODE>
      </VERB>
    </OBJECT>
    <OBJECT ID="obj22" FLAGS="f" OWNER="obj10" LOCATION="obj-1">
      <NAME>Reusable Class</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
      <OBJECT ID="obj34"  OWNER="obj10" LOCATION="obj5">
        <NAME>Reusable Object #34</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>"An adorable stuffed ferret doll that looks just like Kili."</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
          <VALUE>2</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj50"  OWNER="obj10" LOCATION="obj5">
        <NAME>Reusable Object #50</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"You've been humped!"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj51"  OWNER="obj10" LOCATION="obj32">
        <NAME>Reusable Object #51</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"Dimpled cheeks, both pairs, and a dimple in its belly button."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj55"  OWNER="obj10" LOCATION="obj32">
        <NAME>Reusable Object #55</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"Coolio jazz masta p-funk."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj56"  OWNER="obj10" LOCATION="obj32">
        <NAME>Reusable Object #56</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"Bushy-faced and bright-nosed, with a touch of sparkle."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>235</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj57"  OWNER="obj5" LOCATION="obj4">
        <NAME>Reusable Object #57</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj59"  OWNER="obj5" LOCATION="obj5">
        <NAME>Reusable Object #59</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj62"  OWNER="obj5" LOCATION="obj5">
        <NAME>Reusable Object #62</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>"Decorated with a shimmering rainbow of hand-sewn sequins, this magickal Bag of Holding might contain anything from glowing fatbats to pet flumoxes."</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
          <VALUE>10000</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
          <VALUE>5</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj65"  OWNER="obj10" LOCATION="obj4">
        <NAME>Reusable Object #65</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>"Your basic dinner fork.  Where is my macaroni and cheese?"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
          <VALUE>"a"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
          <VALUE>"a"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
          <VALUE>"fork"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj69"  OWNER="obj10" LOCATION="obj4">
        <NAME>Reusable Object #69</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>"A pointy ferret.  Looks dangerous."</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
          <VALUE>"a"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
          <VALUE>"a"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
          <VALUE>"pointy ferret"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj70"  OWNER="obj10" LOCATION="obj5">
        <NAME>Reusable Object #70</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
          <VALUE>2</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj71"  OWNER="obj10" LOCATION="obj32">
        <NAME>Reusable Object #71</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"The flowering dogwood tree."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj73"  OWNER="obj10" LOCATION="obj4">
        <NAME>Reusable Object #73</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"%WA 100% organic hemp t-shirt that reads:", "", "I %RLOVE%W NORMAN PLATEWARMER%w"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
          <VALUE>"a"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
          <VALUE>"a"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
          <VALUE>"polyester shirt"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj74"  OWNER="obj10" LOCATION="obj5">
        <NAME>Reusable Object #74</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj78"  OWNER="obj10" LOCATION="obj5">
        <NAME>Reusable Object #78</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
          <VALUE>1</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
          <VALUE>2</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>2</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
          <VALUE>"The"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
          <VALUE>"a"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
          <VALUE>"dagger"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj79"  OWNER="obj10" LOCATION="obj25">
        <NAME>Reusable Object #79</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"%YKing's Axe of the Heavens.  Yes, the same weapon that whipped Diablo's demonically-glowing ass!"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
          <VALUE>2</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
          <VALUE>5</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>20</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
          <VALUE>"King's Axe of the Heavens"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj80"  OWNER="obj10" LOCATION="obj25">
        <NAME>Reusable Object #80</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
          <VALUE>"noodle"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj81"  OWNER="obj10" LOCATION="obj25">
        <NAME>Reusable Object #81</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
          <VALUE>"frying pan"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj82"  OWNER="obj10" LOCATION="obj25">
        <NAME>Reusable Object #82</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
          <VALUE>"mace"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj90"  OWNER="obj10" LOCATION="obj32">
        <NAME>Reusable Object #90</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"%YWhen I grow up, I want to be a centaur.%w"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
          <VALUE>#32</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>278</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
          <VALUE>13423</VALUE>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj91"  OWNER="obj10" LOCATION="obj25">
        <NAME>Reusable Object #91</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>"A pole-arm with a funny name."</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
          <VALUE>2</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
          <VALUE>10</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>15</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
          <VALUE>"a"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
          <VALUE>"a"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
          <VALUE>"halberd"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj92"  OWNER="obj4" LOCATION="obj-1">
        <NAME>Reusable Object #92</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"A beautiful glass observatory with an open hearth", "and layers of soft rugs, embroidered cushions, and", "a solitary oak rocking chair.  A shaggy gray-muzzled", "wolf is curled watchfully in front of the roaring fire.", "A mug of spiced cider sits on a wooden table next to a", "platter full of fresh bread, slices of sharp cheese, and", "an aged Cabernet Sauvignon of exceptional flavor."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj93"  OWNER="obj4" LOCATION="obj-1">
        <NAME>Reusable Object #93</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj94"  OWNER="obj4" LOCATION="obj-1">
        <NAME>Reusable Object #94</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
    </OBJECT>
    <OBJECT ID="obj24"  OWNER="obj10" LOCATION="obj-1">
      <NAME>Recycler Object</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>non_recyclable</NAME>
        <VALUE>{#0, #1, #2, #3, #6, #7, #8, #9, #10, #5, #11, #12, #13, #14, #15, #19, #20, #21, #22, #24}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>recycle_tasks</NAME>
        <VALUE>{}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>recycle_time_limit</NAME>
        <VALUE>600</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj42" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Combat Manger Object</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_thac0</NAME>
        <VALUE>20</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>round_length</NAME>
        <VALUE>2</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>hit_color</NAME>
        <VALUE>"%Y"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>crit_color</NAME>
        <VALUE>"%R"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>miss_color</NAME>
        <VALUE>"%c"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>end_per_round</NAME>
        <VALUE>4</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>init_order</NAME>
        <CODE>
          "$combat:init_order ( list ) this none this";
          "returns list sorted by init rolls (attack order)";
          "assumes that combatant.combat_weapon is set to something";
          {combatants} = args;
          init_order = {};
          for each in (combatants)
          each.combat_init = each:init_roll(each.combat_weapon);
          list_size = length(init_order);
          if (list_size == 0)
          init_order = {@init_order, each};
          else
          x = 1;
          while ((init_order[x].combat_init &lt; each.combat_init) &amp;&amp; (x &lt; list_size))
          x = x + 1;
          endwhile
          if (each.combat_init &lt;= init_order[x].combat_init)
          init_order = listinsert(init_order, each, x);
          elseif (x == list_size)
          init_order = {@init_order, each};
          endif
          endif
          endfor
          return init_order;
        </CODE>
      </VERB>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>battle</NAME>
        <CODE>
          "$combat:battle( location ) this none this";
          "forked by _attack() and/or itself";
          "performs auto combat for animates in location";
          {loc} = args;
          combatants = loc.combatants;
          "set weapon for this round";
          for each in (combatants)
          each.combat_weapon = each:get_weapon();
          endfor
          "arrange combatants in order of initiative roll";
          combatants = $combat:init_order(combatants);
          for each in (combatants)
          each:lower_endurance($combat.end_per_round);
          each:tell("");
          endfor
          for each in (combatants)
          if (each.combat_stance == "attack")
          targ = each:get_target();
          if (targ != 0)
          each:hit(targ);
          else
          loc.combatants = setremove(loc.combatants, each);
          endif
          elseif (each.combat_stance == "passive")
          "do nothing";
          for targ in (each.targets)
          if (targ.combat_stance != "attack")
          targ.targets = setremove(targ.targets, each);
          each.targets = setremove(each.targets, targ);
          endif
          endfor
          elseif (each.combat_stance == "flee")
          for targ in (each.targets)
          if (targ.combat_stance != "attack")
          targ.targets = setremove(targ.targets, each);
          each.targets = setremove(each.targets, targ);
          endif
          endfor
          viewers = each.location:get_animates();
          viewers = setremove(viewers, each);
          for guy in (viewers)
          guy:sees(3, {each:known_to(guy)[2] + " attempts to flee, but can't escape."});
          endfor
          each:tell("You attempt to flee, but can't escape.");
          elseif (each.combat_stance == "defend")
          "do nothing";
          for targ in (each.targets)
          if (targ.combat_stance != "attack")
          targ.targets = setremove(targ.targets, each);
          each.targets = setremove(each.targets, targ);
          endif
          endfor
          endif
          if (each.targets == {})
          combatants = setremove(combatants, each);
          endif
          "if neither is attacking, take out of targets";
          endfor
          loc.combatants = combatants;
          if (loc.combatants != {})
          fork pid ($combat.round_length)
          $combat:battle(loc);
          endfork
          loc.combat_pid = pid;
          else
          loc.combat_pid = 0;
          viewers = loc:get_animates();
          for each in (viewers)
          each:sees(3, {"The fray has ended."});
          endfor
          endif
          notify(#5, "Ticks left: " + tostr(ticks_left()));
        </CODE>
      </VERB>
    </OBJECT>
    <OBJECT ID="obj43" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Log Manager Ojbect</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>system</NAME>
        <VALUE>{{1030238386, "[INFO]", "Admin: checkpoint..."}, {1030238386, "[INFO]", "Checkpoint started."}, {1030238386, "[INFO]", "Checkpoint finished (success)."}}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>system_watchers</NAME>
        <VALUE>{#4, #5}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>logged_animates</NAME>
        <VALUE>{}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>log_levels</NAME>
        <VALUE>{"[ERROR]", "[WARNING]", "[INFO]"}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>level_colors</NAME>
        <VALUE>{"%R", "%Y", "%B"}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>logs</NAME>
        <VALUE>{"system", "connection", "help", "login"}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>connection</NAME>
        <VALUE>{}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>connection_watchers</NAME>
        <VALUE>{#4, #5}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>help</NAME>
        <VALUE>{}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>help_watchers</NAME>
        <VALUE>{#4, #5}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>login</NAME>
        <VALUE>{}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>login_watchers</NAME>
        <VALUE>{#4, #5}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>add_entry</NAME>
        <CODE>
          "$log:add_entry(str logname, str loglevel, str message)";
          "logname: list on $log. loglevel: str e.g. [ERROR] ";
          {logname, loglevel, message} = args;
          if (logname in $log.logs)
          watchers = $log.(logname + "_watchers");
          else
          return 0;
          endif
          entry = {time(), loglevel, message};
          $log.(logname) = {@$log.(logname), entry};
          for each in (watchers)
          each:tell("%W", ctime(entry[1]), " ", $log.level_colors[is_member(loglevel, $log.log_levels)], loglevel, " %w", message);
          endfor
          return 1;
        </CODE>
      </VERB>
    </OBJECT>
    <OBJECT ID="obj44" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Control Center Object</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj45" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Mixture Table Object</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj46" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Effects Table Object</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj47" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Weather Object</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj48" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Central Bank Object</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj49" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Spell Class</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>endurance_cost</NAME>
        <VALUE>0</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>focus_cost</NAME>
        <VALUE>0</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>invoke</NAME>
        <CODE>
        </CODE>
      </VERB>
      <OBJECT ID="obj86" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
        <NAME>Fireball Spell</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>endurance_cost</NAME>
          <VALUE>50</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>focus_cost</NAME>
          <VALUE>50</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
          <VALUE>"The"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
          <VALUE>"a"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
          <VALUE>"fireball"</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>invoke</NAME>
          <CODE>
            "fireball:invoke()";
            {caster, target} = args;
            if (caster.current_spell != 0)
            return {0, "You are currently casting a spell already!"};
            elseif (!valid(target))
            return {0, "You need to specify a target."};
            elseif (!target:is_a($animate))
            return {0, "You can only cast this spell at an animate."};
            else
            caster:sees(3, {"You wave your hands in a circular motion, and flames flicker from your fingertips."});
            viewers = caster.location:get_animates();
            viewers = setremove(viewers, caster);
            for each in (viewers)
            each:sees(3, {((((caster:known_to(each)[2] + " waves ") + #0.(caster.gender)[5]) + " hands in a circular motion, and flames flicker from ") + #0.(caster.gender)[5]) + " fingertips.%w"});
            endfor
            fork cur_spell ($combat.round_length)
            victims = caster.location.contents;
            temp_victims = {};
            for each in (victims)
            if (each:is_a($animate))
            temp_victims = {@temp_victims, each};
            endif
            endfor
            victims = temp_victims;
            victims = setremove(victims, caster);
            victims = setremove(victims, target);
            "calculate and deal target damage";
            targ_dam = (((((random(10) + random(10)) + random(10)) + random(10)) + random(10)) + random(10)) + random(10);
            caster:sees(3, {((("%RYou blast " + target:known_to(caster)[2]) + " with your Fireball spell (") + tostr(targ_dam)) + ")!%w"});
            target:sees(3, {((((("%R" + caster:known_to(target)[2]) + " blasts you with ") + #0.(caster.gender)[5]) + " Fireball spell (") + tostr(targ_dam)) + ").%w"});
            viewers = caster.location:get_animates();
            viewers = setremove(viewers, target);
            viewers = setremove(viewers, caster);
            for each in (viewers)
            each:sees(3, {((((("%R" + caster:known_to(each)[2]) + " blasts ") + target:known_to(each)[2]) + " with ") + #0.(caster.gender)[5]) + " Fireball spell!%w"});
            endfor
            target:damage("fire", targ_dam);
            "calculate and deal misc victims damage";
            for each in (victims)
            dam = random(6);
            caster:sees(3, {((("%RYou blast " + each:known_to(caster)[2]) + " with your Fireball spell (") + tostr(dam)) + ")!%w"});
            each:sees(3, {((((("%R" + caster:known_to(target)[2]) + " blasts you with ") + #0.(caster.gender)[5]) + " Fireball spell (") + tostr(dam)) + ").%w"});
            viewers = caster.location:get_animates();
            viewers = setremove(viewers, each);
            viewers = setremove(viewers, caster);
            for viewer in (viewers)
            viewer:sees(3, {((((("%R" + caster:known_to(viewer)[2]) + " blasts ") + each:known_to(viewer)[2]) + " with ") + #0.(caster.gender)[5]) + " Fireball spell!%w"});
            endfor
            each:damage("fire", dam);
            endfor
            caster.current_spell = 0;
            endfork
            caster.current_spell = cur_spell;
            endif
          </CODE>
        </VERB>
      </OBJECT>
      <OBJECT ID="obj88" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
        <NAME>Heal Spell</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>endurance_cost</NAME>
          <VALUE>60</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>focus_cost</NAME>
          <VALUE>40</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
        <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
          <NAME>invoke</NAME>
          <CODE>
            "heal:invoke()";
            {caster, target} = args;
            if (!valid(target))
            target = caster;
            endif
            if (caster.current_spell != 0)
            return {0, "You are currently casting a spell already!"};
            elseif (!target:is_a($animate))
            return {0, "You can only cast this spell at an animate."};
            else
            caster:sees(3, {"You wave your hands in a circular motion, and white light shoots from the palms of your hands."});
            viewers = caster.location:get_animates();
            viewers = setremove(viewers, caster);
            for each in (viewers)
            each:sees(3, {((((caster:known_to(each)[2] + " waves ") + #0.(caster.gender)[5]) + " hands in a circular motion, and white light shoots from the palms of ") + #0.(caster.gender)[5]) + " hands.%w"});
            endfor
            fork cur_spell ($combat.round_length)
            "calculate and deal target healing";
            targ_heal = ((random(6) + random(6)) + random(6)) + random(6);
            caster:sees(3, {((("%WYou heal " + target:known_to(caster)[2]) + " with your Heal spell (") + tostr(targ_heal)) + ")!%w"});
            target:sees(3, {((((("%W" + caster:known_to(target)[2]) + " heals you with ") + #0.(caster.gender)[5]) + " Heal spell (") + tostr(targ_heal)) + ").%w"});
            viewers = caster.location:get_animates();
            viewers = setremove(viewers, target);
            viewers = setremove(viewers, caster);
            for each in (viewers)
            each:sees(3, {((((("%W" + caster:known_to(each)[2]) + " heals ") + target:known_to(each)[2]) + " with ") + #0.(caster.gender)[5]) + " Heal spell!%w"});
            endfor
            target:raise_hp(targ_heal);
            caster.current_spell = 0;
            endfork
            caster.current_spell = cur_spell;
            endif
          </CODE>
        </VERB>
      </OBJECT>
    </OBJECT>
    <OBJECT ID="obj52" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Ticker Object</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
      <VERB OWNER="obj10" PERMS="d x w r" DOBJ="this" PREP="none" IOBJ="this">
        <NAME>tick</NAME>
        <CODE>
          "$ticker:tick this none this";
          players = connected_players();
          for each in (players)
          "regen hit points";
          if (each.consciousness == "asleep")
          hp_regen = 5 + $con_hp_regen_table[each:con()];
          foc_regen = 5;
          end_regen = 5;
          elseif (each.consciousness == "awake")
          hp_regen = 1 + $con_hp_regen_table[each:con()];
          foc_regen = 1;
          end_regen = 1;
          else
          hp_regen = 0;
          foc_regen = 0;
          end_regen = 0;
          endif
          each:raise_hp(hp_regen);
          each:raise_focus(foc_regen);
          each:raise_endurance(end_regen);
          endfor
          fork (random(20) + 20)
          $ticker:tick();
          endfork
        </CODE>
      </VERB>
    </OBJECT>
    <OBJECT ID="obj64" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Who List Manager</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>afk</NAME>
        <VALUE>"%C[%cAFK%C]"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>editing</NAME>
        <VALUE>"%G[%gediting%G]"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>admin</NAME>
        <VALUE>"%Y+Admin+"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>header</NAME>
        <VALUE>"               %WThe Murpg Project.  Our pants are on for safety."</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>divider</NAME>
        <VALUE>"%b---------%B----------------%C-------%W------------%C------%B----------------%b---------"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>unknown</NAME>
        <VALUE>"%r(unknown)"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>idle</NAME>
        <VALUE>"%M[%midle%M]"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>dormant</NAME>
        <VALUE>"%M[%mdorm%M]"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>vegetating</NAME>
        <VALUE>"%M[%mvege%M]"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
        <VALUE>"Formatting manager for the who list."</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
        <VALUE>{}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj68" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Channel Manager Object</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>dm_channel</NAME>
        <VALUE>{#4, #5}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>design_channel</NAME>
        <VALUE>{#4, #5, #50, #51}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>admin_channel</NAME>
        <VALUE>{#4, #5, #51}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>admin_prefix</NAME>
        <VALUE>"%G(ADMIN)"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>design_prefix</NAME>
        <VALUE>"%C&lt;&gt;%cDESIGN%C&lt;&gt;%c"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>dm_prefix</NAME>
        <VALUE>"%Y[DM]"</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
        <VALUE>"Looks like your typical channel manager object."</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
    </OBJECT>
    <OBJECT ID="obj85" FLAGS="f w r" OWNER="obj10" LOCATION="obj61">
      <NAME>Magical Path Class</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>spells</NAME>
        <VALUE>{{}}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>common_spells</NAME>
        <VALUE>{}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
        <VALUE>1</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
      <OBJECT ID="obj87" FLAGS="w r" OWNER="obj10" LOCATION="obj61">
        <NAME>Godlike Path</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>spells</NAME>
          <VALUE>{{#86}}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>common_spells</NAME>
          <VALUE>{#86, #88}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
    </OBJECT>
    <OBJECT ID="obj96" FLAGS="f w r" OWNER="obj4" LOCATION="obj-1">
      <NAME>Language Class</NAME>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>description</NAME>
        <VALUE>{"Watch that language!"}</VALUE>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>aliases</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>home</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>short_desc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>core</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>handedness</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_enc</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>base_weight</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>capacity</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>max_fit</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>pprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>gprep</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>generic_name</NAME>
      </PROPERTY>
      <PROPERTY OWNER="obj10" PERMS="w r">
        <NAME>age</NAME>
      </PROPERTY>
      <OBJECT ID="obj63" FLAGS="w r" OWNER="obj4" LOCATION="obj-1">
        <NAME>Dwarvish</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"The language of the Dwarves."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{"Dwarven"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
          <VALUE>4</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
      <OBJECT ID="obj75" FLAGS="w r" OWNER="obj4" LOCATION="obj-1">
        <NAME>Elvish</NAME>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>description</NAME>
          <VALUE>{"The melodic language of the Elves."}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>aliases</NAME>
          <VALUE>{"Elven"}</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>home</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>short_desc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>core</NAME>
          <VALUE>0</VALUE>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>handedness</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_enc</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>base_weight</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>capacity</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>max_fit</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>pprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>gprep</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>generic_name</NAME>
        </PROPERTY>
        <PROPERTY OWNER="obj10" PERMS="w r">
          <NAME>age</NAME>
        </PROPERTY>
      </OBJECT>
    </OBJECT>
  </OBJECT>
</MOO>