final public BinaryExp CmpOp_postfix() throws ParseException {
        Token op;
        Exp right;
    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    case SYM_LESS:
      jj_consume_token(SYM_LESS);
      break;
    case SYM_LESSEQUAL:
      jj_consume_token(SYM_LESSEQUAL);
      break;
    case SYM_EQUAL:
      jj_consume_token(SYM_EQUAL);
      break;
    case SYM_EXCLEQUAL:
      jj_consume_token(SYM_EXCLEQUAL);
      break;
    case SYM_MORE:
      jj_consume_token(SYM_MORE);
      break;
    case SYM_MOREEQUAL:
      jj_consume_token(SYM_MOREEQUAL);
      break;
    default:
      jj_la1[25] = jj_gen;
      jj_consume_token(-1);
      throw new ParseException();
    }
          op =  token;  Exp.appendToGlobalExpString(token.image);
    right = AddOp();
          {if (true) return new BinaryExp(null, op, right);}
    throw new Error("Missing return statement in function");
  }