public static void incorporateIncludesModules(Module module, Stella_Object includees) {
    { Surrogate testValue000 = Stella_Object.safePrimaryType(includees);

      if (testValue000 == Stella.SGT_STELLA_CONS) {
        { Cons includees000 = ((Cons)(includees));

          { Stella_Object name = null;
            Cons iter000 = includees000;

            for (;!(iter000 == Stella.NIL); iter000 = iter000.rest) {
              name = iter000.value;
              Module.incorporateIncludesModules(module, name);
            }
          }
        }
      }
      else if (Surrogate.subtypeOfStringP(testValue000)) {
        { StringWrapper includees000 = ((StringWrapper)(includees));

          { Module includeemodule = Stella_Object.coerceToModule(includees000, true);

            if (includeemodule != null) {
              if (!module.parentModules.memberP(includeemodule)) {
                module.parentModules.insertLast(includeemodule);
              }
              includeemodule.childContexts.insertNew(module);
            }
          }
        }
      }
      else if (Surrogate.subtypeOfSymbolP(testValue000)) {
        { Symbol includees000 = ((Symbol)(includees));

          { Module includeemodule = Stella_Object.coerceToModule(includees000, true);

            if (includeemodule != null) {
              if (!module.parentModules.memberP(includeemodule)) {
                module.parentModules.insertLast(includeemodule);
              }
              includeemodule.childContexts.insertNew(module);
            }
          }
        }
      }
      else {
        { Object old$PrintreadablyP$000 = Stella.$PRINTREADABLYp$.get();

          try {
            Native.setBooleanSpecial(Stella.$PRINTREADABLYp$, true);
            Stella.signalTranslationError();
            if (!(Stella.suppressWarningsP())) {
              Stella.printErrorContext(">> ERROR: ", Stella.STANDARD_ERROR);
              {
                Stella.STANDARD_ERROR.nativeStream.println();
                Stella.STANDARD_ERROR.nativeStream.println(" Illegal argument to ':includes' option`" + Stella_Object.deUglifyParseTree(includees) + "'.");
              }
;
            }

          } finally {
            Stella.$PRINTREADABLYp$.set(old$PrintreadablyP$000);
          }
        }
      }
    }
  }