public Parser literalRange() {
        if (literalRangeParser == null) {
           FutureParser future = scoped("literalRange");
           literalRangeParser = future;
           future.setParser(
               sequence(
                   literal(),
                   choice(
                       token("THROUGH"),
                       token("THRU")
                   ),
                   literal()
               )
           );
        }

        return literalRangeParser;
    }