public static void startupStrategies() {
    { 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)) {
          _StartupStrategies.helpStartupStrategies1();
        }
        if (Stella.currentStartupTimePhaseP(4)) {
          Logic.$PARALLEL_STRATEGIES$ = List.list(Cons.cons(Logic.KWD_DISJUNCTIVE_IMPLICATION_INTRODUCTION, Cons.cons(Logic.KWD_UNIVERSAL_INTRODUCTION, Cons.cons(Logic.KWD_REFUTATION, Stella.NIL))));
          Logic.$PL_ANONYMOUS_MODULE$ = Stella.getStellaModule("PL-ANONYMOUS", true);
        }
        if (Stella.currentStartupTimePhaseP(5)) {
          { Stella_Class renamed_Class = Stella.defineClassFromStringifiedSource("CONDITIONAL-ANTECEDENT-PROOF-ADJUNCT", "(DEFCLASS CONDITIONAL-ANTECEDENT-PROOF-ADJUNCT (PROOF-ADJUNCT) :SLOTS ((PROVABLE-RULE :TYPE PROPOSITION) (GOAL :TYPE PROPOSITION) (PHASE :TYPE KEYWORD :INITIALLY :FORWARD-RULE)))");

            renamed_Class.classConstructorCode = Native.find_java_method("edu.isi.powerloom.logic.ConditionalAntecedentProofAdjunct", "newConditionalAntecedentProofAdjunct", new java.lang.Class [] {});
            renamed_Class.classSlotAccessorCode = Native.find_java_method("edu.isi.powerloom.logic.ConditionalAntecedentProofAdjunct", "accessConditionalAntecedentProofAdjunctSlotValue", new java.lang.Class [] {Native.find_java_class("edu.isi.powerloom.logic.ConditionalAntecedentProofAdjunct"), Native.find_java_class("edu.isi.stella.Symbol"), Native.find_java_class("edu.isi.stella.Stella_Object"), java.lang.Boolean.TYPE});
          }
          { Stella_Class renamed_Class = Stella.defineClassFromStringifiedSource("CLUSTERED-CONJUNCTION-PROOF-ADJUNCT", "(DEFCLASS CLUSTERED-CONJUNCTION-PROOF-ADJUNCT (PROOF-ADJUNCT) :SLOTS ((CLUSTER-FRAMES :TYPE (VECTOR OF CONTROL-FRAME))))");

            renamed_Class.classConstructorCode = Native.find_java_method("edu.isi.powerloom.logic.ClusteredConjunctionProofAdjunct", "newClusteredConjunctionProofAdjunct", new java.lang.Class [] {});
            renamed_Class.classSlotAccessorCode = Native.find_java_method("edu.isi.powerloom.logic.ClusteredConjunctionProofAdjunct", "accessClusteredConjunctionProofAdjunctSlotValue", new java.lang.Class [] {Native.find_java_class("edu.isi.powerloom.logic.ClusteredConjunctionProofAdjunct"), Native.find_java_class("edu.isi.stella.Symbol"), Native.find_java_class("edu.isi.stella.Stella_Object"), java.lang.Boolean.TYPE});
          }
        }
        if (Stella.currentStartupTimePhaseP(6)) {
          Stella.finalizeClasses();
        }
        if (Stella.currentStartupTimePhaseP(7)) {
          _StartupStrategies.helpStartupStrategies2();
          Stella.defineFunctionObject("CONTINUE-FORALL-PROOF", "(DEFUN (CONTINUE-FORALL-PROOF KEYWORD) ((FRAME CONTROL-FRAME) (LASTMOVE KEYWORD)))", Native.find_java_method("edu.isi.powerloom.logic.ControlFrame", "continueForallProof", new java.lang.Class [] {Native.find_java_class("edu.isi.powerloom.logic.ControlFrame"), Native.find_java_class("edu.isi.stella.Keyword")}), null);
          Stella.defineFunctionObject("CONTINUE-EXISTS-PROOF", "(DEFUN (CONTINUE-EXISTS-PROOF KEYWORD) ((FRAME CONTROL-FRAME) (LASTMOVE KEYWORD)))", Native.find_java_method("edu.isi.powerloom.logic.ControlFrame", "continueExistsProof", new java.lang.Class [] {Native.find_java_class("edu.isi.powerloom.logic.ControlFrame"), Native.find_java_class("edu.isi.stella.Keyword")}), null);
          Stella.defineFunctionObject("CONTINUE-CONSTANT-PROOF", "(DEFUN (CONTINUE-CONSTANT-PROOF KEYWORD) ((FRAME CONTROL-FRAME) (LASTMOVE KEYWORD)))", Native.find_java_method("edu.isi.powerloom.logic.ControlFrame", "continueConstantProof", new java.lang.Class [] {Native.find_java_class("edu.isi.powerloom.logic.ControlFrame"), Native.find_java_class("edu.isi.stella.Keyword")}), null);
          Stella.defineExternalSlotFromStringifiedSource("(DEFSLOT CONTROL-FRAME INFERENCE-CUTOFF-REASON :TYPE KEYWORD :ALLOCATION :DYNAMIC)");
          Stella.defineFunctionObject("REGISTER-INFERENCE-CUTOFF", "(DEFUN REGISTER-INFERENCE-CUTOFF ((FRAME CONTROL-FRAME) (REASON KEYWORD)))", Native.find_java_method("edu.isi.powerloom.logic.ControlFrame", "registerInferenceCutoff", new java.lang.Class [] {Native.find_java_class("edu.isi.powerloom.logic.ControlFrame"), Native.find_java_class("edu.isi.stella.Keyword")}), null);
          Stella.defineFunctionObject("CONTINUE-FAIL-PROOF", "(DEFUN (CONTINUE-FAIL-PROOF KEYWORD) ((FRAME CONTROL-FRAME) (LASTMOVE KEYWORD)))", Native.find_java_method("edu.isi.powerloom.logic.ControlFrame", "continueFailProof", new java.lang.Class [] {Native.find_java_class("edu.isi.powerloom.logic.ControlFrame"), Native.find_java_class("edu.isi.stella.Keyword")}), null);
          Stella.defineMethodObject("(DEFMETHOD (CONTINUE-PARTIAL-FAIL-PROOF KEYWORD) ((SELF CONTROL-FRAME) (LASTMOVE KEYWORD)))", Native.find_java_method("edu.isi.powerloom.logic.ControlFrame", "continuePartialFailProof", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Keyword")}), ((java.lang.reflect.Method)(null)));
          Stella.defineFunctionObject("STARTUP-STRATEGIES", "(DEFUN STARTUP-STRATEGIES () :PUBLIC? TRUE)", Native.find_java_method("edu.isi.powerloom.logic._StartupStrategies", "startupStrategies", new java.lang.Class [] {}), null);
          { MethodSlot function = Symbol.lookupFunction(Logic.SYM_LOGIC_STARTUP_STRATEGIES);

            KeyValueList.setDynamicSlotValue(function.dynamicSlots, Logic.SYM_STELLA_METHOD_STARTUP_CLASSNAME, StringWrapper.wrapString("_StartupStrategies"), 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("(DEFGLOBAL *PARALLEL-STRATEGIES* (LIST OF KEYWORD) (LIST :DISJUNCTIVE-IMPLICATION-INTRODUCTION :UNIVERSAL-INTRODUCTION :REFUTATION) :DOCUMENTATION \"List of strategies (keywords) that fork a parallel\ncontrol stack before executing.\")");
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFGLOBAL *FAILED-GOAL-CUTOFFS* INTEGER 0)");
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFGLOBAL *SUCCEEDED-GOAL-CUTOFFS* INTEGER 0)");
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFGLOBAL *PL-ANONYMOUS-MODULE* MODULE (GET-STELLA-MODULE \"PL-ANONYMOUS\" TRUE))");
          Logic.defineExplanationPhrase(Logic.KWD_CONSTANT_PROPOSITION, Logic.KWD_TECHNICAL, "trivially", Stella.NIL);
          Logic.defineExplanationPhrase(Logic.KWD_CONSTANT_PROPOSITION, Logic.KWD_LAY, "trivially", Stella.NIL);
        }

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