public static Stella_Object helpBquotify(Stella_Object tree) {
    if (tree == null) {
      return (Stella.SYM_STELLA_NULL);
    }
    { Surrogate testValue000 = Stella_Object.safePrimaryType(tree);

      if (testValue000 == Stella.SGT_STELLA_CONS) {
        { Cons tree000 = ((Cons)(tree));

          if (tree000 == Stella.NIL) {
            return (Stella.SYM_STELLA_NIL);
          }
          else {
            return (Cons.consList(Cons.cons(Stella.SYM_STELLA_CONS, Cons.cons(Stella_Object.helpBquotify(tree000.value), Cons.cons(Stella_Object.helpBquotify(tree000.rest), Stella.NIL)))));
          }
        }
      }
      else if (Surrogate.subtypeOfIntegerP(testValue000)) {
        { IntegerWrapper tree000 = ((IntegerWrapper)(tree));

          return (Cons.consList(Cons.cons(Stella.SYM_STELLA_WRAP_LITERAL, Cons.cons(tree000, Stella.NIL))));
        }
      }
      else if (Surrogate.subtypeOfLongIntegerP(testValue000)) {
        { LongIntegerWrapper tree000 = ((LongIntegerWrapper)(tree));

          return (Cons.consList(Cons.cons(Stella.SYM_STELLA_WRAP_LITERAL, Cons.cons(tree000, Stella.NIL))));
        }
      }
      else if (Surrogate.subtypeOfStringP(testValue000)) {
        { StringWrapper tree000 = ((StringWrapper)(tree));

          return (Cons.consList(Cons.cons(Stella.SYM_STELLA_WRAP_LITERAL, Cons.cons(tree000, Stella.NIL))));
        }
      }
      else if (Surrogate.subtypeOfFloatP(testValue000)) {
        { FloatWrapper tree000 = ((FloatWrapper)(tree));

          return (Cons.consList(Cons.cons(Stella.SYM_STELLA_WRAP_LITERAL, Cons.cons(tree000, Stella.NIL))));
        }
      }
      else if (Surrogate.subtypeOfCharacterP(testValue000)) {
        { CharacterWrapper tree000 = ((CharacterWrapper)(tree));

          return (Cons.consList(Cons.cons(Stella.SYM_STELLA_WRAP_LITERAL, Cons.cons(tree000, Stella.NIL))));
        }
      }
      else if (Surrogate.subtypeOfKeywordP(testValue000)) {
        { Keyword tree000 = ((Keyword)(tree));

          if (Stella.useHardcodedSymbolsP()) {
            return (Cons.consList(Cons.cons(Stella.SYM_STELLA_GET_KWD, Cons.cons(IntegerWrapper.wrapInteger(tree000.symbolId), Stella.NIL))));
          }
          else {
            return (Cons.consList(Cons.cons(Stella.SYM_STELLA_TYPED_SYS, Cons.cons(GeneralizedSymbol.registerSymbol(tree000), Cons.cons(Stella.SGT_STELLA_SYMBOL, Stella.NIL)))));
          }
        }
      }
      else if (Surrogate.subtypeOfSurrogateP(testValue000)) {
        { Surrogate tree000 = ((Surrogate)(tree));

          if (Stella.useHardcodedSymbolsP()) {
            return (Cons.consList(Cons.cons(Stella.SYM_STELLA_GET_SGT, Cons.cons(IntegerWrapper.wrapInteger(tree000.symbolId), Stella.NIL))));
          }
          else {
            return (Cons.consList(Cons.cons(Stella.SYM_STELLA_TYPED_SYS, Cons.cons(GeneralizedSymbol.registerSymbol(tree000), Cons.cons(Stella.SGT_STELLA_SYMBOL, Stella.NIL)))));
          }
        }
      }
      else if (Surrogate.subtypeOfSymbolP(testValue000)) {
        { Symbol tree000 = ((Symbol)(tree));

          if (Symbol.symbolCommonLispP(tree000)) {
            return (Cons.consList(Cons.cons(Stella.SYM_STELLA_INTERN_COMMON_LISP_SYMBOL, Cons.cons(StringWrapper.wrapString(tree000.symbolName), Stella.NIL))));
          }
          else {
            if (Stella.useHardcodedSymbolsP()) {
              return (Cons.consList(Cons.cons(Stella.SYM_STELLA_GET_SYM, Cons.cons(IntegerWrapper.wrapInteger(((Symbol)(tree000.permanentify())).symbolId), Stella.NIL))));
            }
            else {
              return (Cons.consList(Cons.cons(Stella.SYM_STELLA_TYPED_SYS, Cons.cons(GeneralizedSymbol.registerSymbol(tree000), Cons.cons(Stella.SGT_STELLA_SYMBOL, Stella.NIL)))));
            }
          }
        }
      }
      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 quote: `" + Stella_Object.deUglifyParseTree(tree) + "'.");
              }
;
            }

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