public Parser greaterThanOp() {
        if (greaterThanOpParser == null) {
           FutureParser future = scoped("greaterThanOp");
           greaterThanOpParser = future;
           future.setParser(
               choice(
                   sequence(
                       token("GREATER"),
                       optional(
                           token("THAN")
                       )
                   ),
                   token(">")
               )
           );
        }

        return greaterThanOpParser;
    }