public Parser recordKeyClause() {
        if (recordKeyClauseParser == null) {
           FutureParser future = scoped("recordKeyClause");
           recordKeyClauseParser = future;
           future.setParser(
               sequence(
                   token("RECORD"),
                   optional(
                       token("KEY")
                   ),
                   optional(
                       token("IS")
                   ),
                   recordKeyDefinition(),
                   optional(
                       passwordClause()
                   )
               )
           );
        }

        return recordKeyClauseParser;
    }