public static void startupLogicMacros() {
    { Object old$Module$000 = Stella.$MODULE$.get();
      Object old$Context$000 = Stella.$CONTEXT$.get();

      try {
        Native.setSpecial(Stella.$MODULE$, Stella.getStellaModule("/LOGIC", Stella.$STARTUP_TIME_PHASE$ > 1));
        Native.setSpecial(Stella.$CONTEXT$, ((Module)(Stella.$MODULE$.get())));
        if (Stella.currentStartupTimePhaseP(2)) {
          _StartupLogicMacros.helpStartupLogicMacros1();
          _StartupLogicMacros.helpStartupLogicMacros2();
          Logic.SYM_STELLA_WITH_PROCESS_LOCK = ((Symbol)(GeneralizedSymbol.internRigidSymbolWrtModule("WITH-PROCESS-LOCK", Stella.getStellaModule("/STELLA", true), 0)));
          Logic.SYM_LOGIC_$POWERLOOM_LOCK$ = ((Symbol)(GeneralizedSymbol.internRigidSymbolWrtModule("*POWERLOOM-LOCK*", null, 0)));
          Logic.SYM_STELLA_IGNORE = ((Symbol)(GeneralizedSymbol.internRigidSymbolWrtModule("IGNORE", Stella.getStellaModule("/STELLA", true), 0)));
          Logic.SYM_LOGIC_$CYC_KLUDGES_ENABLEDp$ = ((Symbol)(GeneralizedSymbol.internRigidSymbolWrtModule("*CYC-KLUDGES-ENABLED?*", null, 0)));
          Logic.SYM_LOGIC_STARTUP_LOGIC_MACROS = ((Symbol)(GeneralizedSymbol.internRigidSymbolWrtModule("STARTUP-LOGIC-MACROS", null, 0)));
          Logic.SYM_STELLA_METHOD_STARTUP_CLASSNAME = ((Symbol)(GeneralizedSymbol.internRigidSymbolWrtModule("METHOD-STARTUP-CLASSNAME", Stella.getStellaModule("/STELLA", true), 0)));
        }
        if (Stella.currentStartupTimePhaseP(4)) {
          Logic.$SUPPRESSNONLOGICOBJECTWARNINGp$.setDefaultValue(new Boolean(true));
        }
        if (Stella.currentStartupTimePhaseP(6)) {
          Stella.finalizeClasses();
        }
        if (Stella.currentStartupTimePhaseP(7)) {
          Stella.defineFunctionObject("SIGNAL-PARSING-ERROR", "(DEFUN SIGNAL-PARSING-ERROR (|&BODY| (MESSAGE CONS)) :TYPE OBJECT :MACRO? TRUE)", Native.find_java_method("edu.isi.powerloom.logic.Logic", "signalParsingError", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("SIGNAL-PROPOSITION-ERROR", "(DEFUN SIGNAL-PROPOSITION-ERROR (|&BODY| (MESSAGE CONS)) :TYPE OBJECT :MACRO? TRUE)", Native.find_java_method("edu.isi.powerloom.logic.Logic", "signalPropositionError", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("SIGNAL-PROPOSITION-WARNING", "(DEFUN SIGNAL-PROPOSITION-WARNING (|&BODY| (MESSAGE CONS)) :TYPE OBJECT :MACRO? TRUE)", Native.find_java_method("edu.isi.powerloom.logic.Logic", "signalPropositionWarning", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("DEF-DISPLAY-GLOBALS", "(DEFUN DEF-DISPLAY-GLOBALS ((DISPLAYFUNCTIONNAME SYMBOL) (GLOBALVARIABLENAMES (CONS OF SYMBOL))) :TYPE OBJECT :MACRO? TRUE :LISP-MACRO? TRUE)", Native.find_java_method("edu.isi.powerloom.logic.Logic", "defDisplayGlobals", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Symbol"), Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("MOVE-IN-PLACE", "(DEFUN MOVE-IN-PLACE () :TYPE OBJECT :MACRO? TRUE)", Native.find_java_method("edu.isi.powerloom.logic.Logic", "moveInPlace", new java.lang.Class [] {}), null);
          Stella.defineFunctionObject("MOVE-DOWN", "(DEFUN MOVE-DOWN () :TYPE OBJECT :MACRO? TRUE)", Native.find_java_method("edu.isi.powerloom.logic.Logic", "moveDown", new java.lang.Class [] {}), null);
          Stella.defineFunctionObject("MOVE-UP", "(DEFUN MOVE-UP ((SUCCESS? SYMBOL) (KEEPFRAME? SYMBOL)) :TYPE OBJECT :MACRO? TRUE)", Native.find_java_method("edu.isi.powerloom.logic.Logic", "moveUp", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Symbol"), Native.find_java_class("edu.isi.stella.Symbol")}), null);
          Stella.defineFunctionObject("APPLY-RETRIEVE", "(DEFUN APPLY-RETRIEVE (|&BODY| (BODY CONS)) :TYPE OBJECT :MACRO? TRUE :DOCUMENTATION \"Execute a query composed of io-variables `variables'\nand body `queryBody'.  Before executing, bind variables to `inputBindings'\n(in sequence). If one variable is left unbound, returns a cons list of\nbindings of that variable.  If two or more are unbound, returns\na cons list of cons lists of bindings.  Setting the option :singletons?\nto FALSE always returns a list of lists.  Example call:\n  `(apply-retrieve variables queryBody inputBindings)'\")", Native.find_java_method("edu.isi.powerloom.logic.Logic", "applyRetrieve", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("APPLY-ASK", "(DEFUN APPLY-ASK (|&BODY| (BODY CONS)) :TYPE OBJECT :MACRO? TRUE :DOCUMENTATION \"Execute a yes/no query composed of input-variables\n`inputVariables' and body `queryBody'.  Before executing, bind variables\nto `inputBindings' (in sequence).\n  `(apply-ask inputVariables queryBody inputBindings)'\")", Native.find_java_method("edu.isi.powerloom.logic.Logic", "applyAsk", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("WITHIN-META-CACHE", "(DEFUN WITHIN-META-CACHE (|&BODY| (BODY CONS)) :TYPE OBJECT :MACRO? TRUE :DOCUMENTATION \"Execute `body' within the meta cache of the current module.\nSet appropriate special variables.\")", Native.find_java_method("edu.isi.powerloom.logic.Logic", "withinMetaCache", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("WITHIN-CLASSIFICATION-SESSION", "(DEFUN WITHIN-CLASSIFICATION-SESSION ((DESCRIPTIONORINSTANCE KEYWORD) |&BODY| (BODY CONS)) :TYPE OBJECT :MACRO? TRUE :DOCUMENTATION \"Used during classification.  Execute `body' within the indicated\nclassification session and inference world.\")", Native.find_java_method("edu.isi.powerloom.logic.Logic", "withinClassificationSession", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Keyword"), Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("DEFINE-COMPUTED-CONSTRAINT", "(DEFUN DEFINE-COMPUTED-CONSTRAINT ((NAME SYMBOL) (VAR-LIST CONS) (CONSTRAINT-TEST CONS) |&BODY| (POSITION-COMPUTATIONS CONS)) :TYPE OBJECT :MACRO? TRUE :PUBLIC? TRUE :DOCUMENTATION \"Defines `name' to be a constraint computation which uses\n`constraint-test' to determine if a fully bound set of variables\nsatisfies the constraint.  The forms in `position-computations'\nare used to compute the value for each of the positions. All such\ncomputations must set the variable `value' to be the result\ncomputed for the missing position.  Setting `value' to `null' for\nany such computation means that that particular argument cannot\nbe computed from the others.  The input variables in `var-list'\nwill be bound to the N arguments to the constraint.\n  The generated function will return a Stella Object and take as \ninputs the values of the N arguments to the constraint.  A value\nof `null' means that the value is not available.  If all\narguments are not `null', then the return value will be a Stella\nwrapped boolean indicating whether the constraint is satisified\nor not.\n  If more than one input value is `null', then this constraint\ncode will not be called.\")", Native.find_java_method("edu.isi.powerloom.logic.Logic", "defineComputedConstraint", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Symbol"), Native.find_java_class("edu.isi.stella.Cons"), Native.find_java_class("edu.isi.stella.Cons"), Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("DEFINE-ARITHMETIC-TEST-ON-WRAPPERS", "(DEFUN DEFINE-ARITHMETIC-TEST-ON-WRAPPERS ((NAME SYMBOL) (TEST-NAME SYMBOL)) :TYPE OBJECT :MACRO? TRUE :DOCUMENTATION \"Defines `name' as an arithmetic comparision operation using the\ntest `test-name'.  It will take two wrapped number parameters and\nreturn a `boolean'.  The code will use the appropriate test for\nthe specific subtype of wrapped number actually passed in.\")", Native.find_java_method("edu.isi.powerloom.logic.Logic", "defineArithmeticTestOnWrappers", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Symbol"), Native.find_java_class("edu.isi.stella.Symbol")}), null);
          Stella.defineFunctionObject("DEFINE-ARITHMETIC-OPERATION-ON-WRAPPERS", "(DEFUN DEFINE-ARITHMETIC-OPERATION-ON-WRAPPERS ((NAME SYMBOL) (OPERATION-NAME SYMBOL)) :TYPE OBJECT :MACRO? TRUE :DOCUMENTATION \"Defines `name' as an arithmetic comparision operation using the\ntest `test-name'.  It will take two wrapped number parameters and\nreturn a wrapped number.  The code will use the appropriate test\nfor the specific subtype of wrapped number actually passed in,\nand return the appropriate subtype of wrapped number based on the\nnormal arithmetic contagion rules.\n  \nFor example, if both input parameters are wrapped integers then\nthe output will be a wrapped integer.  If the inputs are a\nwrapped integer and a wrapped float then the output will be a\nwrapped float, etc.\")", Native.find_java_method("edu.isi.powerloom.logic.Logic", "defineArithmeticOperationOnWrappers", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Symbol"), Native.find_java_class("edu.isi.stella.Symbol")}), null);
          Stella.defineFunctionObject("WITH-LOGIC-ENVIRONMENT", "(DEFUN WITH-LOGIC-ENVIRONMENT ((MODULEFORM OBJECT) (ENVIRONMENT OBJECT) |&BODY| (BODY CONS)) :TYPE OBJECT :MACRO? TRUE :DOCUMENTATION \"Execute `body' within the module resulting from `moduleForm'.\n`*module*' is an acceptable `moduleForm'.  It will locally rebind \n`*module*' and `*context*' and shield the outer bindings from changes.\" :PUBLIC? TRUE)", Native.find_java_method("edu.isi.powerloom.logic.Logic", "withLogicEnvironment", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Stella_Object"), Native.find_java_class("edu.isi.stella.Stella_Object"), Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("WHEN-CYC-KLUDGES-ENABLED", "(DEFUN WHEN-CYC-KLUDGES-ENABLED (|&BODY| (BODY CONS)) :TYPE OBJECT :MACRO? TRUE)", Native.find_java_method("edu.isi.powerloom.logic.Logic", "whenCycKludgesEnabled", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("STARTUP-LOGIC-MACROS", "(DEFUN STARTUP-LOGIC-MACROS () :PUBLIC? TRUE)", Native.find_java_method("edu.isi.powerloom.logic._StartupLogicMacros", "startupLogicMacros", new java.lang.Class [] {}), null);
          { MethodSlot function = Symbol.lookupFunction(Logic.SYM_LOGIC_STARTUP_LOGIC_MACROS);

            KeyValueList.setDynamicSlotValue(function.dynamicSlots, Logic.SYM_STELLA_METHOD_STARTUP_CLASSNAME, StringWrapper.wrapString("_StartupLogicMacros"), Stella.NULL_STRING_WRAPPER);
          }
        }
        if (Stella.currentStartupTimePhaseP(8)) {
          Stella.finalizeSlots();
          Stella.cleanupUnfinalizedClasses();
        }
        if (Stella.currentStartupTimePhaseP(9)) {
          Stella_Object.inModule(((StringWrapper)(Stella_Object.copyConsTree(StringWrapper.wrapString("LOGIC")))));
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFSPECIAL *SUPPRESSNONLOGICOBJECTWARNING?* BOOLEAN TRUE)");
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFGLOBAL *CYC-KLUDGES-ENABLED?* BOOLEAN FALSE)");
        }

      } finally {
        Stella.$CONTEXT$.set(old$Context$000);
        Stella.$MODULE$.set(old$Module$000);
      }
    }
  }