public static Stella_Object extractAnnotation(Stella_Object tree, Keyword option, Object [] MV_returnarray) {
    { Stella_Object value = null;

      if (Stella_Object.safePrimaryType(tree) == Logic.SGT_STELLA_CONS) {
        { Cons tree000 = ((Cons)(tree));

          if (tree000.value == Logic.SYM_LOGIC_ABOUT) {
            { PropertyList self000 = PropertyList.newPropertyList();

              self000.thePlist = tree000.rest.rest;
              { PropertyList options = self000;

                value = options.lookup(option);
                if (value != null) {
                  options.removeAt(option);
                  tree000.rest.rest = options.thePlist;
                }
              }
            }
          }
        }
      }
      else {
      }
      { Stella_Object _return_temp = tree;

        MV_returnarray[0] = value;
        return (_return_temp);
      }
    }
  }