public Parser reportGroupDescriptionEntry_format2() {
        if (reportGroupDescriptionEntry_format2Parser == null) {
           FutureParser future = scoped("reportGroupDescriptionEntry_format2");
           reportGroupDescriptionEntry_format2Parser = future;
           future.setParser(
               sequence(
                   levelNumber(),
                   optional(
                       dataName()
                   ),
                   optional(
                       sequence(
                           token("LINE"),
                           optional(
                               token("NUMBER")
                           ),
                           optional(
                               token("IS")
                           ),
                           choice(
                               sequence(
                                   integer(),
                                   optional(
                                       sequence(
                                           optional(
                                               token("ON")
                                           ),
                                           token("NEXT"),
                                           token("PAGE")
                                       )
                                   )
                               ),
                               sequence(
                                   token("PLUS"),
                                   integer()
                               ),
                               sequence(
                                   token("NEXT"),
                                   token("PAGE")
                               )
                           )
                       )
                   ),
                   optional(
                       sequence(
                           token("USAGE"),
                           optional(
                               token("IS")
                           ),
                           choice(
                               token("DISPLAY"),
                               token("DISPLAY-1")
                           )
                       )
                   ),
                   token(".")
               )
           );
        }

        return reportGroupDescriptionEntry_format2Parser;
    }