public static void javaHelpOutputBinaryOperator(Cons expression, int nestlevel) {
    { Stella_Object arg1 = expression.value;
      StringWrapper op = ((StringWrapper)(expression.rest.value));
      Stella_Object arg2 = expression.rest.rest.value;

      if (StringWrapper.javaNestedOperatorNeedsParenthesesP(op, arg1)) {
        ((OutputStream)(Stella.$CURRENT_STREAM$.get())).nativeStream.print("(");
      }
      if (Stella_Object.javaBinaryOperatorP(op)) {
        Cons.javaHelpOutputBinaryOperator(((Cons)(arg1)).rest, nestlevel + 1);
      }
      else {
        Stella_Object.javaOutputStatement(arg1);
      }
      if (StringWrapper.javaNestedOperatorNeedsParenthesesP(op, arg1)) {
        ((OutputStream)(Stella.$CURRENT_STREAM$.get())).nativeStream.print(")");
      }
      ((OutputStream)(Stella.$CURRENT_STREAM$.get())).nativeStream.print(" ");
      ((OutputStream)(Stella.$CURRENT_STREAM$.get())).nativeStream.print(op.wrapperValue);
      if (StringWrapper.javaIndentableBinaryOperatorP(op)) {
        {
          ((OutputStream)(Stella.$CURRENT_STREAM$.get())).nativeStream.println();
          Stella.javaIndent();
          ((OutputStream)(Stella.$CURRENT_STREAM$.get())).nativeStream.print("    ");
          { int i = Stella.NULL_INTEGER;
            int iter000 = 1;
            int upperBound000 = nestlevel;
            boolean unboundedP000 = upperBound000 == Stella.NULL_INTEGER;

            for (;unboundedP000 ||
                      (iter000 <= upperBound000); iter000 = iter000 + 1) {
              i = iter000;
              i = i;
              ((OutputStream)(Stella.$CURRENT_STREAM$.get())).nativeStream.print(" ");
            }
          }
        }
      }
      else {
        ((OutputStream)(Stella.$CURRENT_STREAM$.get())).nativeStream.print(" ");
      }
      if (StringWrapper.javaNestedOperatorNeedsParenthesesP(op, arg2)) {
        ((OutputStream)(Stella.$CURRENT_STREAM$.get())).nativeStream.print("(");
      }
      if (Stella_Object.javaBinaryOperatorP(arg2)) {
        Cons.javaHelpOutputBinaryOperator(((Cons)(arg2)).rest, nestlevel + 1);
      }
      else {
        Stella_Object.javaOutputStatement(arg2);
      }
      if (StringWrapper.javaNestedOperatorNeedsParenthesesP(op, arg2)) {
        ((OutputStream)(Stella.$CURRENT_STREAM$.get())).nativeStream.print(")");
      }
    }
  }