* @param options
   */
  public static void load(String file, Cons options) {
    { String temp000 = Stella.findFileInLoadPath(file, Logic.$POWERLOOM_KB_FILE_EXTENSIONS$);

      file = ((temp000 != null) ? temp000 : file);
    }
    Stella.ensureFileExists(file, "load");
    { PropertyList theoptions = Logic.parseLogicCommandOptions(options, Cons.list$(Cons.cons(Logic.KWD_CHECK_DUPLICATESp, Cons.cons(Logic.SGT_STELLA_BOOLEAN, Cons.cons(Logic.KWD_MODULE, Cons.cons(Logic.SGT_STELLA_MODULE, Cons.cons(Stella.NIL, Stella.NIL)))))), true, false);
      boolean toplevelinvocationP = ((String)(Stella.$CURRENTFILE$.get())) == null;
      InputFileStream inputstream = null;

      try {
        { Object old$Currentfile$000 = Stella.$CURRENTFILE$.get();
          Object old$DontCheckForDuplicatePropositionsP$000 = Logic.$DONT_CHECK_FOR_DUPLICATE_PROPOSITIONSp$.get();

          try {
            Native.setSpecial(Stella.$CURRENTFILE$, Stella.fileBaseName(file));
            Native.setBooleanSpecial(Logic.$DONT_CHECK_FOR_DUPLICATE_PROPOSITIONSp$, !BooleanWrapper.coerceWrappedBooleanToBoolean(((BooleanWrapper)(theoptions.lookupWithDefault(Logic.KWD_CHECK_DUPLICATESp, Stella.TRUE_WRAPPER)))));
            inputstream = InputFileStream.newInputFileStream(file);
            Logic.loadStreamInModule(inputstream, ((Module)(theoptions.lookup(Logic.KWD_MODULE))));

          } finally {
            Logic.$DONT_CHECK_FOR_DUPLICATE_PROPOSITIONSp$.set(old$DontCheckForDuplicatePropositionsP$000);
            Stella.$CURRENTFILE$.set(old$Currentfile$000);
          }
        }

      } finally {
        if (toplevelinvocationP) {
          Stella.sweepTransients();
        }
        if (inputstream != null) {
          inputstream.free();
        }
      }
    }
  }