public Parser identificationDivision() {
        if (identificationDivisionParser == null) {
           FutureParser future = scoped("identificationDivision");
           identificationDivisionParser = future;
           future.setParser(
               choice(
                   sequence(
                       choice(
                           token("ID"),
                           token("IDENTIFICATION")
                       ),
                       token("DIVISION"),
                       token("."),
                       optional(
                           identificationDivisionBody()
                       )
                   ),
                   identificationDivisionBody()
               )
           );
        }

        return identificationDivisionParser;
    }