public Parser acceptStatement() {
        if (acceptStatementParser == null) {
           FutureParser future = scoped("acceptStatement");
           acceptStatementParser = future;
           future.setParser(
               sequence(
                   token("ACCEPT"),
                   choice(
                       acceptFromDate(),
                       acceptFromOther(),
                       acceptFromMnemonic(),
                       acceptMessageCount(),
                       acceptScreenFormat()
                   ),
                   optional(
                       token("END-ACCEPT")
                   )
               )
           );
        }

        return acceptStatementParser;
    }