test_class.declarator: RESERVED_KEYWORDS = ImmutableList.of(
        "ABS",                                               "2011", "2014", "c",
        "ABSOLUTE",                      "92", "99",
        "ACTION",                        "92", "99",
        "ADD",                           "92", "99", "2003",
        "AFTER",                               "99",
        "ALL",                           "92", "99", "2003", "2011", "2014", "c",
        "ALLOCATE",                      "92", "99", "2003", "2011", "2014", "c",
        "ALLOW",                                                             "c",
        "ALTER",                         "92", "99", "2003", "2011", "2014", "c",
        "AND",                           "92", "99", "2003", "2011", "2014", "c",
        "ANY",                           "92", "99", "2003", "2011", "2014", "c",
        "ARE",                           "92", "99", "2003", "2011", "2014", "c",
        "ARRAY",                               "99", "2003", "2011", "2014", "c",
        "ARRAY_AGG",                                         "2011",
        "ARRAY_MAX_CARDINALITY",                                     "2014", "c",
        "AS",                            "92", "99", "2003", "2011", "2014", "c",
        "ASC",                           "92", "99",
        "ASENSITIVE",                          "99", "2003", "2011", "2014", "c",
        "ASSERTION",                     "92", "99",
        "ASYMMETRIC",                          "99", "2003", "2011", "2014", "c",
        "AT",                            "92", "99", "2003", "2011", "2014", "c",
        "ATOMIC",                              "99", "2003", "2011", "2014", "c",
        "AUTHORIZATION",                 "92", "99", "2003", "2011", "2014", "c",
        "AVG",                           "92",               "2011", "2014", "c",
        "BEFORE",                              "99",
        "BEGIN",                         "92", "99", "2003", "2011", "2014", "c",
        "BEGIN_FRAME",                                               "2014", "c",
        "BEGIN_PARTITION",                                           "2014", "c",
        "BETWEEN",                       "92", "99", "2003", "2011", "2014", "c",
        "BIGINT",                                    "2003", "2011", "2014", "c",
        "BINARY",                              "99", "2003", "2011", "2014", "c",
        "BIT",                           "92", "99",                         "c",
        "BIT_LENGTH",                    "92",
        "BLOB",                                "99", "2003", "2011", "2014", "c",
        "BOOLEAN",                             "99", "2003", "2011", "2014", "c",
        "BOTH",                          "92", "99", "2003", "2011", "2014", "c",
        "BREADTH",                             "99",
        "BY",                            "92", "99", "2003", "2011", "2014", "c",
        "CALL",                          "92", "99", "2003", "2011", "2014", "c",
        "CALLED",                                    "2003", "2011", "2014", "c",
        "CARDINALITY",                                       "2011", "2014", "c",
        "CASCADE",                       "92", "99",
        "CASCADED",                      "92", "99", "2003", "2011", "2014", "c",
        "CASE",                          "92", "99", "2003", "2011", "2014", "c",
        "CAST",                          "92", "99", "2003", "2011", "2014", "c",
        "CATALOG",                       "92", "99",
        "CEIL",                                              "2011", "2014", "c",
        "CEILING",                                           "2011", "2014", "c",
        "CHAR",                          "92", "99", "2003", "2011", "2014", "c",
        "CHARACTER",                     "92", "99", "2003", "2011", "2014", "c",
        "CHARACTER_LENGTH",              "92",               "2011", "2014", "c",
        "CHAR_LENGTH",                   "92",               "2011", "2014", "c",
        "CHECK",                         "92", "99", "2003", "2011", "2014", "c",
        "CLASSIFIER",                                                "2014", "c",
        "CLOB",                                "99", "2003", "2011", "2014", "c",
        "CLOSE",                         "92", "99", "2003", "2011", "2014", "c",
        "COALESCE",                      "92",               "2011", "2014", "c",
        "COLLATE",                       "92", "99", "2003", "2011", "2014", "c",
        "COLLATION",                     "92", "99",
        "COLLECT",                                           "2011", "2014", "c",
        "COLUMN",                        "92", "99", "2003", "2011", "2014", "c",
        "COMMIT",                        "92", "99", "2003", "2011", "2014", "c",
        "CONDITION",                     "92", "99", "2003", "2011", "2014", "c",
        "CONNECT",                       "92", "99", "2003", "2011", "2014", "c",
        "CONNECTION",                    "92", "99",
        "CONSTRAINT",                    "92", "99", "2003", "2011", "2014", "c",
        "CONSTRAINTS",                   "92", "99",
        "CONSTRUCTOR",                         "99",
        "CONTAINS",                      "92",               "2011", "2014", "c",
        "CONTINUE",                      "92", "99", "2003",
        "CONVERT",                       "92",               "2011", "2014", "c",
        "CORR",                                              "2011", "2014", "c",
        "CORRESPONDING",                 "92", "99", "2003", "2011", "2014", "c",
        "COUNT",                         "92",               "2011", "2014", "c",
        "COVAR_POP",                                         "2011", "2014", "c",
        "COVAR_SAMP",                                        "2011", "2014", "c",
        "CREATE",                        "92", "99", "2003", "2011", "2014", "c",
        "CROSS",                         "92", "99", "2003", "2011", "2014", "c",
        "CUBE",                                "99", "2003", "2011", "2014", "c",
        "CUME_DIST",                                         "2011", "2014", "c",
        "CURRENT",                       "92", "99", "2003", "2011", "2014", "c",
        "CURRENT_CATALOG",                                   "2011", "2014", "c",
        "CURRENT_DATE",                  "92", "99", "2003", "2011", "2014", "c",
        "CURRENT_DEFAULT_TRANSFORM_GROUP",     "99", "2003", "2011", "2014", "c",
        "CURRENT_PATH",                  "92", "99", "2003", "2011", "2014", "c",
        "CURRENT_ROLE",                        "99", "2003", "2011", "2014", "c",
        "CURRENT_ROW",                                               "2014", "c",
        "CURRENT_SCHEMA",                                    "2011", "2014", "c",
        "CURRENT_TIME",                  "92", "99", "2003", "2011", "2014", "c",
        "CURRENT_TIMESTAMP",             "92", "99", "2003", "2011", "2014", "c",
        "CURRENT_TRANSFORM_GROUP_FOR_TYPE",    "99", "2003", "2011", "2014", "c",
        "CURRENT_USER",                  "92", "99", "2003", "2011", "2014", "c",
        "CURSOR",                        "92", "99", "2003", "2011", "2014", "c",
        "CYCLE",                               "99", "2003", "2011", "2014", "c",
        "DATA",                                "99",
        "DATE",                          "92", "99", "2003", "2011", "2014", "c",
        "DAY",                           "92", "99", "2003", "2011", "2014", "c",
        "DAYS",                                              "2011",
        "DEALLOCATE",                    "92", "99", "2003", "2011", "2014", "c",
        "DEC",                           "92", "99", "2003", "2011", "2014", "c",
        "DECIMAL",                       "92", "99", "2003", "2011", "2014", "c",
        "DECLARE",                       "92", "99", "2003", "2011", "2014", "c",
        "DEFAULT",                       "92", "99", "2003", "2011", "2014", "c",
        "DEFERRABLE",                    "92", "99",
        "DEFERRED",                      "92", "99",
        "DEFINE",                                                    "2014", "c",
        "DELETE",                        "92", "99", "2003", "2011", "2014", "c",
        "DENSE_RANK",                                        "2011", "2014", "c",
        "DEPTH",                               "99",
        "DEREF",                               "99", "2003", "2011", "2014", "c",
        "DESC",                          "92", "99",
        "DESCRIBE",                      "92", "99", "2003", "2011", "2014", "c",
        "DESCRIPTOR",                    "92", "99",
        "DETERMINISTIC",                 "92", "99", "2003", "2011", "2014", "c",
        "DIAGNOSTICS",                   "92", "99",
        "DISALLOW",                                                          "c",
        "DISCONNECT",                    "92", "99", "2003", "2011", "2014", "c",
        "DISTINCT",                      "92", "99", "2003", "2011", "2014", "c",
        "DO",                            "92", "99", "2003",
        "DOMAIN",                        "92", "99",
        "DOUBLE",                        "92", "99", "2003", "2011", "2014", "c",
        "DROP",                          "92", "99", "2003", "2011", "2014", "c",
        "DYNAMIC",                             "99", "2003", "2011", "2014", "c",
        "EACH",                                "99", "2003", "2011", "2014", "c",
        "ELEMENT",                                   "2003", "2011", "2014", "c",
        "ELSE",                          "92", "99", "2003", "2011", "2014", "c",
        "ELSEIF",                        "92", "99", "2003",
        "EMPTY",                                                     "2014", "c",
        "END",                           "92", "99", "2003", "2011", "2014", "c",
        "END-EXEC",                                          "2011", "2014", "c",
        "END_FRAME",                                                 "2014", "c",
        "END_PARTITION",                                             "2014", "c",
        "EQUALS",                              "99",                 "2014", "c",
        "ESCAPE",                        "92", "99", "2003", "2011", "2014", "c",
        "EVERY",                                             "2011", "2014", "c",
        "EXCEPT",                        "92", "99", "2003", "2011", "2014", "c",
        "EXCEPTION",                     "92", "99",
        "EXEC",                          "92", "99", "2003", "2011", "2014", "c",
        "EXECUTE",                       "92", "99", "2003", "2011", "2014", "c",
        "EXISTS",                        "92", "99", "2003", "2011", "2014", "c",
        "EXIT",                          "92", "99", "2003",
        "EXP",                                               "2011", "2014", "c",
        "EXPLAIN",                                                           "c",
        "EXTEND",                                                            "c",
        "EXTERNAL",                      "92", "99", "2003", "2011", "2014", "c",
        "EXTRACT",                       "92",               "2011", "2014", "c",
        "FALSE",                         "92", "99", "2003", "2011", "2014", "c",
        "FETCH",                         "92", "99", "2003", "2011", "2014", "c",
        "FILTER",                              "99", "2003", "2011", "2014", "c",
        "FIRST",                         "92", "99",
        "FIRST_VALUE",                                       "2011", "2014", "c",
        "FLOAT",                         "92", "99", "2003", "2011", "2014", "c",
        "FLOOR",                                             "2011", "2014", "c",
        "FOR",                           "92", "99", "2003", "2011", "2014", "c",
        "FOREIGN",                       "92", "99", "2003", "2011", "2014", "c",
        "FOREVER",                                           "2011",
        "FOUND",                         "92", "99",
        "FRAME_ROW",                                                 "2014", "c",
        "FREE",                                "99", "2003", "2011", "2014", "c",
        "FROM",                          "92", "99", "2003", "2011", "2014", "c",
        "FULL",                          "92", "99", "2003", "2011", "2014", "c",
        "FUNCTION",                      "92", "99", "2003", "2011", "2014", "c",
        "FUSION",                                            "2011", "2014", "c",
        "GENERAL",                             "99",
        "GET",                           "92", "99", "2003", "2011", "2014", "c",
        "GLOBAL",                        "92", "99", "2003", "2011", "2014", "c",
        "GO",                            "92", "99",
        "GOTO",                          "92", "99",
        "GRANT",                         "92", "99", "2003", "2011", "2014", "c",
        "GROUP",                         "92", "99", "2003", "2011", "2014", "c",
        "GROUPING",                            "99", "2003", "2011", "2014", "c",
        "GROUPS",                                                    "2014", "c",
        "HANDLER",                       "92", "99", "2003",
        "HAVING",                        "92", "99", "2003", "2011", "2014", "c",
        "HOLD",                                "99", "2003", "2011", "2014", "c",
        "HOUR",                          "92", "99", "2003", "2011", "2014", "c",
        "HOURS",                                             "2011",
        "IDENTITY",                      "92", "99", "2003", "2011", "2014", "c",
        "IF",                            "92", "99", "2003",
        "IMMEDIATE",                     "92", "99", "2003",
        "IMMEDIATELY",
        "IMPORT",                                                            "c",
        "IN",                            "92", "99", "2003", "2011", "2014", "c",
        "INDICATOR",                     "92", "99", "2003", "2011", "2014", "c",
        "INITIAL",                                                   "2014", "c",
        "INITIALLY",                     "92", "99",
        "INNER",                         "92", "99", "2003", "2011", "2014", "c",
        "INOUT",                         "92", "99", "2003", "2011", "2014", "c",
        "INPUT",                         "92", "99", "2003",
        "INSENSITIVE",                   "92", "99", "2003", "2011", "2014", "c",
        "INSERT",                        "92", "99", "2003", "2011", "2014", "c",
        "INT",                           "92", "99", "2003", "2011", "2014", "c",
        "INTEGER",                       "92", "99", "2003", "2011", "2014", "c",
        "INTERSECT",                     "92", "99", "2003", "2011", "2014", "c",
        "INTERSECTION",                                      "2011", "2014", "c",
        "INTERVAL",                      "92", "99", "2003", "2011", "2014", "c",
        "INTO",                          "92", "99", "2003", "2011", "2014", "c",
        "IS",                            "92", "99", "2003", "2011", "2014", "c",
        "ISOLATION",                     "92", "99",
        "ITERATE",                             "99", "2003",
        "JOIN",                          "92", "99", "2003", "2011", "2014", "c",
        "JSON_ARRAY",                                                        "c",
        "JSON_ARRAYAGG",                                                     "c",
        "JSON_EXISTS",                                                       "c",
        "JSON_OBJECT",                                                       "c",
        "JSON_OBJECTAGG",                                                    "c",
        "JSON_QUERY",                                                        "c",
        "JSON_VALUE",                                                        "c",
        "KEEP",                                              "2011",
        "KEY",                           "92", "99",
        "LAG",                                               "2011", "2014", "c",
        "LANGUAGE",                      "92", "99", "2003", "2011", "2014", "c",
        "LARGE",                               "99", "2003", "2011", "2014", "c",
        "LAST",                          "92", "99",
        "LAST_VALUE",                                        "2011", "2014", "c",
        "LATERAL",                             "99", "2003", "2011", "2014", "c",
        "LEAD",                                              "2011", "2014", "c",
        "LEADING",                       "92", "99", "2003", "2011", "2014", "c",
        "LEAVE",                         "92", "99", "2003",
        "LEFT",                          "92", "99", "2003", "2011", "2014", "c",
        "LEVEL",                         "92", "99",
        "LIKE",                          "92", "99", "2003", "2011", "2014", "c",
        "LIKE_REGEX",                                        "2011", "2014", "c",
        "LIMIT",                                                             "c",
        "LN",                                                "2011", "2014", "c",
        "LOCAL",                         "92", "99", "2003", "2011", "2014", "c",
        "LOCALTIME",                           "99", "2003", "2011", "2014", "c",
        "LOCALTIMESTAMP",                      "99", "2003", "2011", "2014", "c",
        "LOCATOR",                             "99",
        "LOOP",                          "92", "99", "2003",
        "LOWER",                         "92",               "2011", "2014", "c",
        "MAP",                                 "99",
        "MATCH",                         "92", "99", "2003", "2011", "2014", "c",
        "MATCHES",                                                   "2014", "c",
        "MATCH_NUMBER",                                              "2014", "c",
        "MATCH_RECOGNIZE",                                           "2014", "c",
        "MAX",                           "92",               "2011", "2014", "c",
        "MAX_CARDINALITY",                                   "2011",
        "MEASURES",                                                          "c",
        "MEMBER",                                    "2003", "2011", "2014", "c",
        "MERGE",                                     "2003", "2011", "2014", "c",
        "METHOD",                              "99", "2003", "2011", "2014", "c",
        "MIN",                           "92",               "2011", "2014", "c",
        "MINUS",                                                             "c",
        "MINUTE",                        "92", "99", "2003", "2011", "2014", "c",
        "MINUTES",                                           "2011",
        "MOD",                                               "2011", "2014", "c",
        "MODIFIES",                            "99", "2003", "2011", "2014", "c",
        "MODULE",                        "92", "99", "2003", "2011", "2014", "c",
        "MONTH",                         "92", "99", "2003", "2011", "2014", "c",
        "MULTISET",                                  "2003", "2011", "2014", "c",
        "NAMES",                         "92", "99",
        "NATIONAL",                      "92", "99", "2003", "2011", "2014", "c",
        "NATURAL",                       "92", "99", "2003", "2011", "2014", "c",
        "NCHAR",                         "92", "99", "2003", "2011", "2014", "c",
        "NCLOB",                               "99", "2003", "2011", "2014", "c",
        "NEW",                                 "99", "2003", "2011", "2014", "c",
        "NEXT",                          "92", "99",                         "c",
        "NO",                            "92", "99", "2003", "2011", "2014", "c",
        "NONE",                                "99", "2003", "2011", "2014", "c",
        "NORMALIZE",                                         "2011", "2014", "c",
        "NOT",                           "92", "99", "2003", "2011", "2014", "c",
        "NTH_VALUE",                                         "2011", "2014", "c",
        "NTILE",                                             "2011", "2014", "c",
        "NULL",                          "92", "99", "2003", "2011", "2014", "c",
        "NULLIF",                        "92",               "2011", "2014", "c",
        "NUMERIC",                       "92", "99", "2003", "2011", "2014", "c",
        "OBJECT",                              "99",
        "OCCURRENCES_REGEX",                                 "2011", "2014", "c",
        "OCTET_LENGTH",                  "92",               "2011", "2014", "c",
        "OF",                            "92", "99", "2003", "2011", "2014", "c",
        "OFFSET",                                            "2011", "2014", "c",
        "OLD",                                 "99", "2003", "2011", "2014", "c",
        "OMIT",                                                      "2014", "c",
        "ON",                            "92", "99", "2003", "2011", "2014", "c",
        "ONE",                                                       "2014", "c",
        "ONLY",                          "92", "99", "2003", "2011", "2014", "c",
        "OPEN",                          "92", "99", "2003", "2011", "2014", "c",
        "OPTION",                        "92", "99",
        "OR",                            "92", "99", "2003", "2011", "2014", "c",
        "ORDER",                         "92", "99", "2003", "2011", "2014", "c",
        "ORDINALITY",                          "99",
        "OUT",                           "92", "99", "2003", "2011", "2014", "c",
        "OUTER",                         "92", "99", "2003", "2011", "2014", "c",
        "OUTPUT",                        "92", "99", "2003",
        "OVER",                                "99", "2003", "2011", "2014", "c",
        "OVERLAPS",                      "92", "99", "2003", "2011", "2014", "c",
        "OVERLAY",                                           "2011", "2014", "c",
        "PAD",                           "92", "99",
        "PARAMETER",                     "92", "99", "2003", "2011", "2014", "c",
        "PARTIAL",                       "92", "99",
        "PARTITION",                           "99", "2003", "2011", "2014", "c",
        "PATH",                          "92", "99",
        "PATTERN",                                                   "2014", "c",
        "PER",                                                       "2014", "c",
        "PERCENT",                                                   "2014", "c",
        "PERCENTILE_CONT",                                   "2011", "2014", "c",
        "PERCENTILE_DISC",                                   "2011", "2014", "c",
        "PERCENT_RANK",                                      "2011", "2014", "c",
        "PERIOD",                                                    "2014", "c",
        "PERMUTE",                                                           "c",
        "PORTION",                                                   "2014", "c",
        "POSITION",                      "92",               "2011", "2014", "c",
        "POSITION_REGEX",                                    "2011", "2014", "c",
        "POWER",                                             "2011", "2014", "c",
        "PRECEDES",                                                  "2014", "c",
        "PRECISION",                     "92", "99", "2003", "2011", "2014", "c",
        "PREPARE",                       "92", "99", "2003", "2011", "2014", "c",
        "PRESERVE",                      "92", "99",
        "PREV",                                                              "c",
        "PRIMARY",                       "92", "99", "2003", "2011", "2014", "c",
        "PRIOR",                         "92", "99",
        "PRIVILEGES",                    "92", "99",
        "PROCEDURE",                     "92", "99", "2003", "2011", "2014", "c",
        "PUBLIC",                        "92", "99",
        "RANGE",                               "99", "2003", "2011", "2014", "c",
        "RANK",                                              "2011", "2014", "c",
        "READ",                          "92", "99",
        "READS",                               "99", "2003", "2011", "2014", "c",
        "REAL",                          "92", "99", "2003", "2011", "2014", "c",
        "RECURSIVE",                           "99", "2003", "2011", "2014", "c",
        "REF",                                 "99", "2003", "2011", "2014", "c",
        "REFERENCES",                    "92", "99", "2003", "2011", "2014", "c",
        "REFERENCING",                         "99", "2003", "2011", "2014", "c",
        "REGR_AVGX",                                         "2011", "2014", "c",
        "REGR_AVGY",                                         "2011", "2014", "c",
        "REGR_COUNT",                                        "2011", "2014", "c",
        "REGR_INTERCEPT",                                    "2011", "2014", "c",
        "REGR_R2",                                           "2011", "2014", "c",
        "REGR_SLOPE",                                        "2011", "2014", "c",
        "REGR_SXX",                                          "2011", "2014", "c",
        "REGR_SXY",                                          "2011", "2014", "c",
        "REGR_SYY",                                          "2011", "2014", "c",
        "RELATIVE",                      "92", "99",
        "RELEASE",                             "99", "2003", "2011", "2014", "c",
        "REPEAT",                        "92", "99", "2003",
        "RESET",                                                             "c",
        "RESIGNAL",                      "92", "99", "2003",
        "RESTRICT",                      "92", "99",
        "RESULT",                              "99", "2003", "2011", "2014", "c",
        "RETURN",                        "92", "99", "2003", "2011", "2014", "c",
        "RETURNS",                       "92", "99", "2003", "2011", "2014", "c",
        "REVOKE",                        "92", "99", "2003", "2011", "2014", "c",
        "RIGHT",                         "92", "99", "2003", "2011", "2014", "c",
        "ROLE",                                "99",
        "ROLLBACK",                      "92", "99", "2003", "2011", "2014", "c",
        "ROLLUP",                              "99", "2003", "2011", "2014", "c",
        "ROUTINE",                       "92", "99",
        "ROW",                                 "99", "2003", "2011", "2014", "c",
        "ROWS",                          "92", "99", "2003", "2011", "2014", "c",
        "ROW_NUMBER",                                        "2011", "2014", "c",
        "RUNNING",                                                   "2014", "c",
        "SAVEPOINT",                           "99", "2003", "2011", "2014", "c",
        "SCHEMA",                        "92", "99",
        "SCOPE",                               "99", "2003", "2011", "2014", "c",
        "SCROLL",                        "92", "99", "2003", "2011", "2014", "c",
        "SEARCH",                              "99", "2003", "2011", "2014", "c",
        "SECOND",                        "92", "99", "2003", "2011", "2014", "c",
        "SECONDS",                                           "2011",
        "SECTION",                       "92", "99",
        "SEEK",                                                      "2014", "c",
        "SELECT",                        "92", "99", "2003", "2011", "2014", "c",
        "SENSITIVE",                           "99", "2003", "2011", "2014", "c",
        "SESSION",                       "92", "99",
        "SESSION_USER",                  "92", "99", "2003", "2011", "2014", "c",
        "SET",                           "92", "99", "2003", "2011", "2014", "c",
        "SETS",                                "99",
        "SHOW",                                                      "2014", "c",
        "SIGNAL",                        "92", "99", "2003",
        "SIMILAR",                             "99", "2003", "2011", "2014", "c",
        "SIZE",                          "92", "99",
        "SKIP",                                                      "2014", "c",
        "SMALLINT",                      "92", "99", "2003", "2011", "2014", "c",
        "SOME",                          "92", "99", "2003", "2011", "2014", "c",
        "SPACE",                         "92", "99",
        "SPECIFIC",                      "92", "99", "2003", "2011", "2014", "c",
        "SPECIFICTYPE",                        "99", "2003", "2011", "2014", "c",
        "SQL",                           "92", "99", "2003", "2011", "2014", "c",
        "SQLCODE",                       "92",
        "SQLERROR",                      "92",
        "SQLEXCEPTION",                  "92", "99", "2003", "2011", "2014", "c",
        "SQLSTATE",                      "92", "99", "2003", "2011", "2014", "c",
        "SQLWARNING",                    "92", "99", "2003", "2011", "2014", "c",
        "SQRT",                                              "2011", "2014", "c",
        "START",                               "99", "2003", "2011", "2014", "c",
        "STATE",                               "99",
        "STATIC",                              "99", "2003", "2011", "2014", "c",
        "STDDEV_POP",                                        "2011", "2014", "c",
        "STDDEV_SAMP",                                       "2011", "2014", "c",
        "STREAM",                                                            "c",
        "SUBMULTISET",                               "2003", "2011", "2014", "c",
        "SUBSET",                                                    "2014", "c",
        "SUBSTRING",                     "92",               "2011", "2014", "c",
        "SUBSTRING_REGEX",                                   "2011", "2014", "c",
        "SUCCEEDS",                                                  "2014", "c",
        "SUM",                           "92",               "2011", "2014", "c",
        "SYMMETRIC",                           "99", "2003", "2011", "2014", "c",
        "SYSTEM",                              "99", "2003", "2011", "2014", "c",
        "SYSTEM_TIME",                                               "2014", "c",
        "SYSTEM_USER",                   "92", "99", "2003", "2011", "2014", "c",
        "TABLE",                         "92", "99", "2003", "2011", "2014", "c",
        "TABLESAMPLE",                               "2003", "2011", "2014", "c",
        "TEMPORARY",                     "92", "99",
        "THEN",                          "92", "99", "2003", "2011", "2014", "c",
        "TIME",                          "92", "99", "2003", "2011", "2014", "c",
        "TIMESTAMP",                     "92", "99", "2003", "2011", "2014", "c",
        "TIMEZONE_HOUR",                 "92", "99", "2003", "2011", "2014", "c",
        "TIMEZONE_MINUTE",               "92", "99", "2003", "2011", "2014", "c",
        "TINYINT",                                                           "c",
        "TO",                            "92", "99", "2003", "2011", "2014", "c",
        "TRAILING",                      "92", "99", "2003", "2011", "2014", "c",
        "TRANSACTION",                   "92", "99",
        "TRANSLATE",                     "92",               "2011", "2014", "c",
        "TRANSLATE_REGEX",                                   "2011", "2014", "c",
        "TRANSLATION",                   "92", "99", "2003", "2011", "2014", "c",
        "TREAT",                               "99", "2003", "2011", "2014", "c",
        "TRIGGER",                             "99", "2003", "2011", "2014", "c",
        "TRIM",                          "92",               "2011", "2014", "c",
        "TRIM_ARRAY",                                        "2011", "2014", "c",
        "TRUE",                          "92", "99", "2003", "2011", "2014", "c",
        "TRUNCATE",                                          "2011", "2014", "c",
        "UESCAPE",                                           "2011", "2014", "c",
        "UNDER",                               "99",
        "UNDO",                          "92", "99", "2003",
        "UNION",                         "92", "99", "2003", "2011", "2014", "c",
        "UNIQUE",                        "92", "99", "2003", "2011", "2014", "c",
        "UNKNOWN",                       "92", "99", "2003", "2011", "2014", "c",
        "UNNEST",                              "99", "2003", "2011", "2014", "c",
        "UNTIL",                         "92", "99", "2003",
        "UPDATE",                        "92", "99", "2003", "2011", "2014", "c",
        "UPPER",                         "92",               "2011", "2014", "c",
        "UPSERT",                                                            "c",
        "USAGE",                         "92", "99",
        "USER",                          "92", "99", "2003", "2011", "2014", "c",
        "USING",                         "92", "99", "2003", "2011", "2014", "c",
        "VALUE",                         "92", "99", "2003", "2011", "2014", "c",
        "VALUES",                        "92", "99", "2003", "2011", "2014", "c",
        "VALUE_OF",                                                  "2014", "c",
        "VARBINARY",                                         "2011", "2014", "c",
        "VARCHAR",                       "92", "99", "2003", "2011", "2014", "c",
        "VARYING",                       "92", "99", "2003", "2011", "2014", "c",
        "VAR_POP",                                           "2011", "2014", "c",
        "VAR_SAMP",                                          "2011", "2014", "c",
        "VERSION",                                           "2011",
        "VERSIONING",                                        "2011", "2014", "c",
        "VERSIONS",                                          "2011",
        "VIEW",                          "92", "99",
        "WHEN",                          "92", "99", "2003", "2011", "2014", "c",
        "WHENEVER",                      "92", "99", "2003", "2011", "2014", "c",
        "WHERE",                         "92", "99", "2003", "2011", "2014", "c",
        "WHILE",                         "92", "99", "2003",
        "WIDTH_BUCKET",                                      "2011", "2014", "c",
        "WINDOW",                              "99", "2003", "2011", "2014", "c",
        "WITH",                          "92", "99", "2003", "2011", "2014", "c",
        "WITHIN",                              "99", "2003", "2011", "2014", "c",
        "WITHOUT",                             "99", "2003", "2011", "2014", "c",
        "WORK",                          "92", "99",
        "WRITE",                         "92", "99",
        "YEAR",                          "92", "99", "2003", "2011", "2014", "c",
        "YEARS",                                             "2011",
        "ZONE",                          "92", "99")
test_class.modifier: private static final
test_class.original_string: private static final List<String> RESERVED_KEYWORDS = ImmutableList.of(
        "ABS",                                               "2011", "2014", "c",
        "ABSOLUTE",                      "92", "99",
        "ACTION",                        "92", "99",
        "ADD",                           "92", "99", "2003",
        "AFTER",                               "99",
        "ALL",                           "92", "99", "2003", "2011", "2014", "c",
        "ALLOCATE",                      "92", "99", "2003", "2011", "2014", "c",
        "ALLOW",                                                             "c",
        "ALTER",                         "92", "99", "2003", "2011", "2014", "c",
        "AND",                           "92", "99", "2003", "2011", "2014", "c",
        "ANY",                           "92", "99", "2003", "2011", "2014", "c",
        "ARE",                           "92", "99", "2003", "2011", "2014", "c",
        "ARRAY",                               "99", "2003", "2011", "2014", "c",
        "ARRAY_AGG",                                         "2011",
        "ARRAY_MAX_CARDINALITY",                                     "2014", "c",
        "AS",                            "92", "99", "2003", "2011", "2014", "c",
        "ASC",                           "92", "99",
        "ASENSITIVE",                          "99", "2003", "2011", "2014", "c",
        "ASSERTION",                     "92", "99",
        "ASYMMETRIC",                          "99", "2003", "2011", "2014", "c",
        "AT",                            "92", "99", "2003", "2011", "2014", "c",
        "ATOMIC",                              "99", "2003", "2011", "2014", "c",
        "AUTHORIZATION",                 "92", "99", "2003", "2011", "2014", "c",
        "AVG",                           "92",               "2011", "2014", "c",
        "BEFORE",                              "99",
        "BEGIN",                         "92", "99", "2003", "2011", "2014", "c",
        "BEGIN_FRAME",                                               "2014", "c",
        "BEGIN_PARTITION",                                           "2014", "c",
        "BETWEEN",                       "92", "99", "2003", "2011", "2014", "c",
        "BIGINT",                                    "2003", "2011", "2014", "c",
        "BINARY",                              "99", "2003", "2011", "2014", "c",
        "BIT",                           "92", "99",                         "c",
        "BIT_LENGTH",                    "92",
        "BLOB",                                "99", "2003", "2011", "2014", "c",
        "BOOLEAN",                             "99", "2003", "2011", "2014", "c",
        "BOTH",                          "92", "99", "2003", "2011", "2014", "c",
        "BREADTH",                             "99",
        "BY",                            "92", "99", "2003", "2011", "2014", "c",
        "CALL",                          "92", "99", "2003", "2011", "2014", "c",
        "CALLED",                                    "2003", "2011", "2014", "c",
        "CARDINALITY",                                       "2011", "2014", "c",
        "CASCADE",                       "92", "99",
        "CASCADED",                      "92", "99", "2003", "2011", "2014", "c",
        "CASE",                          "92", "99", "2003", "2011", "2014", "c",
        "CAST",                          "92", "99", "2003", "2011", "2014", "c",
        "CATALOG",                       "92", "99",
        "CEIL",                                              "2011", "2014", "c",
        "CEILING",                                           "2011", "2014", "c",
        "CHAR",                          "92", "99", "2003", "2011", "2014", "c",
        "CHARACTER",                     "92", "99", "2003", "2011", "2014", "c",
        "CHARACTER_LENGTH",              "92",               "2011", "2014", "c",
        "CHAR_LENGTH",                   "92",               "2011", "2014", "c",
        "CHECK",                         "92", "99", "2003", "2011", "2014", "c",
        "CLASSIFIER",                                                "2014", "c",
        "CLOB",                                "99", "2003", "2011", "2014", "c",
        "CLOSE",                         "92", "99", "2003", "2011", "2014", "c",
        "COALESCE",                      "92",               "2011", "2014", "c",
        "COLLATE",                       "92", "99", "2003", "2011", "2014", "c",
        "COLLATION",                     "92", "99",
        "COLLECT",                                           "2011", "2014", "c",
        "COLUMN",                        "92", "99", "2003", "2011", "2014", "c",
        "COMMIT",                        "92", "99", "2003", "2011", "2014", "c",
        "CONDITION",                     "92", "99", "2003", "2011", "2014", "c",
        "CONNECT",                       "92", "99", "2003", "2011", "2014", "c",
        "CONNECTION",                    "92", "99",
        "CONSTRAINT",                    "92", "99", "2003", "2011", "2014", "c",
        "CONSTRAINTS",                   "92", "99",
        "CONSTRUCTOR",                         "99",
        "CONTAINS",                      "92",               "2011", "2014", "c",
        "CONTINUE",                      "92", "99", "2003",
        "CONVERT",                       "92",               "2011", "2014", "c",
        "CORR",                                              "2011", "2014", "c",
        "CORRESPONDING",                 "92", "99", "2003", "2011", "2014", "c",
        "COUNT",                         "92",               "2011", "2014", "c",
        "COVAR_POP",                                         "2011", "2014", "c",
        "COVAR_SAMP",                                        "2011", "2014", "c",
        "CREATE",                        "92", "99", "2003", "2011", "2014", "c",
        "CROSS",                         "92", "99", "2003", "2011", "2014", "c",
        "CUBE",                                "99", "2003", "2011", "2014", "c",
        "CUME_DIST",                                         "2011", "2014", "c",
        "CURRENT",                       "92", "99", "2003", "2011", "2014", "c",
        "CURRENT_CATALOG",                                   "2011", "2014", "c",
        "CURRENT_DATE",                  "92", "99", "2003", "2011", "2014", "c",
        "CURRENT_DEFAULT_TRANSFORM_GROUP",     "99", "2003", "2011", "2014", "c",
        "CURRENT_PATH",                  "92", "99", "2003", "2011", "2014", "c",
        "CURRENT_ROLE",                        "99", "2003", "2011", "2014", "c",
        "CURRENT_ROW",                                               "2014", "c",
        "CURRENT_SCHEMA",                                    "2011", "2014", "c",
        "CURRENT_TIME",                  "92", "99", "2003", "2011", "2014", "c",
        "CURRENT_TIMESTAMP",             "92", "99", "2003", "2011", "2014", "c",
        "CURRENT_TRANSFORM_GROUP_FOR_TYPE",    "99", "2003", "2011", "2014", "c",
        "CURRENT_USER",                  "92", "99", "2003", "2011", "2014", "c",
        "CURSOR",                        "92", "99", "2003", "2011", "2014", "c",
        "CYCLE",                               "99", "2003", "2011", "2014", "c",
        "DATA",                                "99",
        "DATE",                          "92", "99", "2003", "2011", "2014", "c",
        "DAY",                           "92", "99", "2003", "2011", "2014", "c",
        "DAYS",                                              "2011",
        "DEALLOCATE",                    "92", "99", "2003", "2011", "2014", "c",
        "DEC",                           "92", "99", "2003", "2011", "2014", "c",
        "DECIMAL",                       "92", "99", "2003", "2011", "2014", "c",
        "DECLARE",                       "92", "99", "2003", "2011", "2014", "c",
        "DEFAULT",                       "92", "99", "2003", "2011", "2014", "c",
        "DEFERRABLE",                    "92", "99",
        "DEFERRED",                      "92", "99",
        "DEFINE",                                                    "2014", "c",
        "DELETE",                        "92", "99", "2003", "2011", "2014", "c",
        "DENSE_RANK",                                        "2011", "2014", "c",
        "DEPTH",                               "99",
        "DEREF",                               "99", "2003", "2011", "2014", "c",
        "DESC",                          "92", "99",
        "DESCRIBE",                      "92", "99", "2003", "2011", "2014", "c",
        "DESCRIPTOR",                    "92", "99",
        "DETERMINISTIC",                 "92", "99", "2003", "2011", "2014", "c",
        "DIAGNOSTICS",                   "92", "99",
        "DISALLOW",                                                          "c",
        "DISCONNECT",                    "92", "99", "2003", "2011", "2014", "c",
        "DISTINCT",                      "92", "99", "2003", "2011", "2014", "c",
        "DO",                            "92", "99", "2003",
        "DOMAIN",                        "92", "99",
        "DOUBLE",                        "92", "99", "2003", "2011", "2014", "c",
        "DROP",                          "92", "99", "2003", "2011", "2014", "c",
        "DYNAMIC",                             "99", "2003", "2011", "2014", "c",
        "EACH",                                "99", "2003", "2011", "2014", "c",
        "ELEMENT",                                   "2003", "2011", "2014", "c",
        "ELSE",                          "92", "99", "2003", "2011", "2014", "c",
        "ELSEIF",                        "92", "99", "2003",
        "EMPTY",                                                     "2014", "c",
        "END",                           "92", "99", "2003", "2011", "2014", "c",
        "END-EXEC",                                          "2011", "2014", "c",
        "END_FRAME",                                                 "2014", "c",
        "END_PARTITION",                                             "2014", "c",
        "EQUALS",                              "99",                 "2014", "c",
        "ESCAPE",                        "92", "99", "2003", "2011", "2014", "c",
        "EVERY",                                             "2011", "2014", "c",
        "EXCEPT",                        "92", "99", "2003", "2011", "2014", "c",
        "EXCEPTION",                     "92", "99",
        "EXEC",                          "92", "99", "2003", "2011", "2014", "c",
        "EXECUTE",                       "92", "99", "2003", "2011", "2014", "c",
        "EXISTS",                        "92", "99", "2003", "2011", "2014", "c",
        "EXIT",                          "92", "99", "2003",
        "EXP",                                               "2011", "2014", "c",
        "EXPLAIN",                                                           "c",
        "EXTEND",                                                            "c",
        "EXTERNAL",                      "92", "99", "2003", "2011", "2014", "c",
        "EXTRACT",                       "92",               "2011", "2014", "c",
        "FALSE",                         "92", "99", "2003", "2011", "2014", "c",
        "FETCH",                         "92", "99", "2003", "2011", "2014", "c",
        "FILTER",                              "99", "2003", "2011", "2014", "c",
        "FIRST",                         "92", "99",
        "FIRST_VALUE",                                       "2011", "2014", "c",
        "FLOAT",                         "92", "99", "2003", "2011", "2014", "c",
        "FLOOR",                                             "2011", "2014", "c",
        "FOR",                           "92", "99", "2003", "2011", "2014", "c",
        "FOREIGN",                       "92", "99", "2003", "2011", "2014", "c",
        "FOREVER",                                           "2011",
        "FOUND",                         "92", "99",
        "FRAME_ROW",                                                 "2014", "c",
        "FREE",                                "99", "2003", "2011", "2014", "c",
        "FROM",                          "92", "99", "2003", "2011", "2014", "c",
        "FULL",                          "92", "99", "2003", "2011", "2014", "c",
        "FUNCTION",                      "92", "99", "2003", "2011", "2014", "c",
        "FUSION",                                            "2011", "2014", "c",
        "GENERAL",                             "99",
        "GET",                           "92", "99", "2003", "2011", "2014", "c",
        "GLOBAL",                        "92", "99", "2003", "2011", "2014", "c",
        "GO",                            "92", "99",
        "GOTO",                          "92", "99",
        "GRANT",                         "92", "99", "2003", "2011", "2014", "c",
        "GROUP",                         "92", "99", "2003", "2011", "2014", "c",
        "GROUPING",                            "99", "2003", "2011", "2014", "c",
        "GROUPS",                                                    "2014", "c",
        "HANDLER",                       "92", "99", "2003",
        "HAVING",                        "92", "99", "2003", "2011", "2014", "c",
        "HOLD",                                "99", "2003", "2011", "2014", "c",
        "HOUR",                          "92", "99", "2003", "2011", "2014", "c",
        "HOURS",                                             "2011",
        "IDENTITY",                      "92", "99", "2003", "2011", "2014", "c",
        "IF",                            "92", "99", "2003",
        "IMMEDIATE",                     "92", "99", "2003",
        "IMMEDIATELY",
        "IMPORT",                                                            "c",
        "IN",                            "92", "99", "2003", "2011", "2014", "c",
        "INDICATOR",                     "92", "99", "2003", "2011", "2014", "c",
        "INITIAL",                                                   "2014", "c",
        "INITIALLY",                     "92", "99",
        "INNER",                         "92", "99", "2003", "2011", "2014", "c",
        "INOUT",                         "92", "99", "2003", "2011", "2014", "c",
        "INPUT",                         "92", "99", "2003",
        "INSENSITIVE",                   "92", "99", "2003", "2011", "2014", "c",
        "INSERT",                        "92", "99", "2003", "2011", "2014", "c",
        "INT",                           "92", "99", "2003", "2011", "2014", "c",
        "INTEGER",                       "92", "99", "2003", "2011", "2014", "c",
        "INTERSECT",                     "92", "99", "2003", "2011", "2014", "c",
        "INTERSECTION",                                      "2011", "2014", "c",
        "INTERVAL",                      "92", "99", "2003", "2011", "2014", "c",
        "INTO",                          "92", "99", "2003", "2011", "2014", "c",
        "IS",                            "92", "99", "2003", "2011", "2014", "c",
        "ISOLATION",                     "92", "99",
        "ITERATE",                             "99", "2003",
        "JOIN",                          "92", "99", "2003", "2011", "2014", "c",
        "JSON_ARRAY",                                                        "c",
        "JSON_ARRAYAGG",                                                     "c",
        "JSON_EXISTS",                                                       "c",
        "JSON_OBJECT",                                                       "c",
        "JSON_OBJECTAGG",                                                    "c",
        "JSON_QUERY",                                                        "c",
        "JSON_VALUE",                                                        "c",
        "KEEP",                                              "2011",
        "KEY",                           "92", "99",
        "LAG",                                               "2011", "2014", "c",
        "LANGUAGE",                      "92", "99", "2003", "2011", "2014", "c",
        "LARGE",                               "99", "2003", "2011", "2014", "c",
        "LAST",                          "92", "99",
        "LAST_VALUE",                                        "2011", "2014", "c",
        "LATERAL",                             "99", "2003", "2011", "2014", "c",
        "LEAD",                                              "2011", "2014", "c",
        "LEADING",                       "92", "99", "2003", "2011", "2014", "c",
        "LEAVE",                         "92", "99", "2003",
        "LEFT",                          "92", "99", "2003", "2011", "2014", "c",
        "LEVEL",                         "92", "99",
        "LIKE",                          "92", "99", "2003", "2011", "2014", "c",
        "LIKE_REGEX",                                        "2011", "2014", "c",
        "LIMIT",                                                             "c",
        "LN",                                                "2011", "2014", "c",
        "LOCAL",                         "92", "99", "2003", "2011", "2014", "c",
        "LOCALTIME",                           "99", "2003", "2011", "2014", "c",
        "LOCALTIMESTAMP",                      "99", "2003", "2011", "2014", "c",
        "LOCATOR",                             "99",
        "LOOP",                          "92", "99", "2003",
        "LOWER",                         "92",               "2011", "2014", "c",
        "MAP",                                 "99",
        "MATCH",                         "92", "99", "2003", "2011", "2014", "c",
        "MATCHES",                                                   "2014", "c",
        "MATCH_NUMBER",                                              "2014", "c",
        "MATCH_RECOGNIZE",                                           "2014", "c",
        "MAX",                           "92",               "2011", "2014", "c",
        "MAX_CARDINALITY",                                   "2011",
        "MEASURES",                                                          "c",
        "MEMBER",                                    "2003", "2011", "2014", "c",
        "MERGE",                                     "2003", "2011", "2014", "c",
        "METHOD",                              "99", "2003", "2011", "2014", "c",
        "MIN",                           "92",               "2011", "2014", "c",
        "MINUS",                                                             "c",
        "MINUTE",                        "92", "99", "2003", "2011", "2014", "c",
        "MINUTES",                                           "2011",
        "MOD",                                               "2011", "2014", "c",
        "MODIFIES",                            "99", "2003", "2011", "2014", "c",
        "MODULE",                        "92", "99", "2003", "2011", "2014", "c",
        "MONTH",                         "92", "99", "2003", "2011", "2014", "c",
        "MULTISET",                                  "2003", "2011", "2014", "c",
        "NAMES",                         "92", "99",
        "NATIONAL",                      "92", "99", "2003", "2011", "2014", "c",
        "NATURAL",                       "92", "99", "2003", "2011", "2014", "c",
        "NCHAR",                         "92", "99", "2003", "2011", "2014", "c",
        "NCLOB",                               "99", "2003", "2011", "2014", "c",
        "NEW",                                 "99", "2003", "2011", "2014", "c",
        "NEXT",                          "92", "99",                         "c",
        "NO",                            "92", "99", "2003", "2011", "2014", "c",
        "NONE",                                "99", "2003", "2011", "2014", "c",
        "NORMALIZE",                                         "2011", "2014", "c",
        "NOT",                           "92", "99", "2003", "2011", "2014", "c",
        "NTH_VALUE",                                         "2011", "2014", "c",
        "NTILE",                                             "2011", "2014", "c",
        "NULL",                          "92", "99", "2003", "2011", "2014", "c",
        "NULLIF",                        "92",               "2011", "2014", "c",
        "NUMERIC",                       "92", "99", "2003", "2011", "2014", "c",
        "OBJECT",                              "99",
        "OCCURRENCES_REGEX",                                 "2011", "2014", "c",
        "OCTET_LENGTH",                  "92",               "2011", "2014", "c",
        "OF",                            "92", "99", "2003", "2011", "2014", "c",
        "OFFSET",                                            "2011", "2014", "c",
        "OLD",                                 "99", "2003", "2011", "2014", "c",
        "OMIT",                                                      "2014", "c",
        "ON",                            "92", "99", "2003", "2011", "2014", "c",
        "ONE",                                                       "2014", "c",
        "ONLY",                          "92", "99", "2003", "2011", "2014", "c",
        "OPEN",                          "92", "99", "2003", "2011", "2014", "c",
        "OPTION",                        "92", "99",
        "OR",                            "92", "99", "2003", "2011", "2014", "c",
        "ORDER",                         "92", "99", "2003", "2011", "2014", "c",
        "ORDINALITY",                          "99",
        "OUT",                           "92", "99", "2003", "2011", "2014", "c",
        "OUTER",                         "92", "99", "2003", "2011", "2014", "c",
        "OUTPUT",                        "92", "99", "2003",
        "OVER",                                "99", "2003", "2011", "2014", "c",
        "OVERLAPS",                      "92", "99", "2003", "2011", "2014", "c",
        "OVERLAY",                                           "2011", "2014", "c",
        "PAD",                           "92", "99",
        "PARAMETER",                     "92", "99", "2003", "2011", "2014", "c",
        "PARTIAL",                       "92", "99",
        "PARTITION",                           "99", "2003", "2011", "2014", "c",
        "PATH",                          "92", "99",
        "PATTERN",                                                   "2014", "c",
        "PER",                                                       "2014", "c",
        "PERCENT",                                                   "2014", "c",
        "PERCENTILE_CONT",                                   "2011", "2014", "c",
        "PERCENTILE_DISC",                                   "2011", "2014", "c",
        "PERCENT_RANK",                                      "2011", "2014", "c",
        "PERIOD",                                                    "2014", "c",
        "PERMUTE",                                                           "c",
        "PORTION",                                                   "2014", "c",
        "POSITION",                      "92",               "2011", "2014", "c",
        "POSITION_REGEX",                                    "2011", "2014", "c",
        "POWER",                                             "2011", "2014", "c",
        "PRECEDES",                                                  "2014", "c",
        "PRECISION",                     "92", "99", "2003", "2011", "2014", "c",
        "PREPARE",                       "92", "99", "2003", "2011", "2014", "c",
        "PRESERVE",                      "92", "99",
        "PREV",                                                              "c",
        "PRIMARY",                       "92", "99", "2003", "2011", "2014", "c",
        "PRIOR",                         "92", "99",
        "PRIVILEGES",                    "92", "99",
        "PROCEDURE",                     "92", "99", "2003", "2011", "2014", "c",
        "PUBLIC",                        "92", "99",
        "RANGE",                               "99", "2003", "2011", "2014", "c",
        "RANK",                                              "2011", "2014", "c",
        "READ",                          "92", "99",
        "READS",                               "99", "2003", "2011", "2014", "c",
        "REAL",                          "92", "99", "2003", "2011", "2014", "c",
        "RECURSIVE",                           "99", "2003", "2011", "2014", "c",
        "REF",                                 "99", "2003", "2011", "2014", "c",
        "REFERENCES",                    "92", "99", "2003", "2011", "2014", "c",
        "REFERENCING",                         "99", "2003", "2011", "2014", "c",
        "REGR_AVGX",                                         "2011", "2014", "c",
        "REGR_AVGY",                                         "2011", "2014", "c",
        "REGR_COUNT",                                        "2011", "2014", "c",
        "REGR_INTERCEPT",                                    "2011", "2014", "c",
        "REGR_R2",                                           "2011", "2014", "c",
        "REGR_SLOPE",                                        "2011", "2014", "c",
        "REGR_SXX",                                          "2011", "2014", "c",
        "REGR_SXY",                                          "2011", "2014", "c",
        "REGR_SYY",                                          "2011", "2014", "c",
        "RELATIVE",                      "92", "99",
        "RELEASE",                             "99", "2003", "2011", "2014", "c",
        "REPEAT",                        "92", "99", "2003",
        "RESET",                                                             "c",
        "RESIGNAL",                      "92", "99", "2003",
        "RESTRICT",                      "92", "99",
        "RESULT",                              "99", "2003", "2011", "2014", "c",
        "RETURN",                        "92", "99", "2003", "2011", "2014", "c",
        "RETURNS",                       "92", "99", "2003", "2011", "2014", "c",
        "REVOKE",                        "92", "99", "2003", "2011", "2014", "c",
        "RIGHT",                         "92", "99", "2003", "2011", "2014", "c",
        "ROLE",                                "99",
        "ROLLBACK",                      "92", "99", "2003", "2011", "2014", "c",
        "ROLLUP",                              "99", "2003", "2011", "2014", "c",
        "ROUTINE",                       "92", "99",
        "ROW",                                 "99", "2003", "2011", "2014", "c",
        "ROWS",                          "92", "99", "2003", "2011", "2014", "c",
        "ROW_NUMBER",                                        "2011", "2014", "c",
        "RUNNING",                                                   "2014", "c",
        "SAVEPOINT",                           "99", "2003", "2011", "2014", "c",
        "SCHEMA",                        "92", "99",
        "SCOPE",                               "99", "2003", "2011", "2014", "c",
        "SCROLL",                        "92", "99", "2003", "2011", "2014", "c",
        "SEARCH",                              "99", "2003", "2011", "2014", "c",
        "SECOND",                        "92", "99", "2003", "2011", "2014", "c",
        "SECONDS",                                           "2011",
        "SECTION",                       "92", "99",
        "SEEK",                                                      "2014", "c",
        "SELECT",                        "92", "99", "2003", "2011", "2014", "c",
        "SENSITIVE",                           "99", "2003", "2011", "2014", "c",
        "SESSION",                       "92", "99",
        "SESSION_USER",                  "92", "99", "2003", "2011", "2014", "c",
        "SET",                           "92", "99", "2003", "2011", "2014", "c",
        "SETS",                                "99",
        "SHOW",                                                      "2014", "c",
        "SIGNAL",                        "92", "99", "2003",
        "SIMILAR",                             "99", "2003", "2011", "2014", "c",
        "SIZE",                          "92", "99",
        "SKIP",                                                      "2014", "c",
        "SMALLINT",                      "92", "99", "2003", "2011", "2014", "c",
        "SOME",                          "92", "99", "2003", "2011", "2014", "c",
        "SPACE",                         "92", "99",
        "SPECIFIC",                      "92", "99", "2003", "2011", "2014", "c",
        "SPECIFICTYPE",                        "99", "2003", "2011", "2014", "c",
        "SQL",                           "92", "99", "2003", "2011", "2014", "c",
        "SQLCODE",                       "92",
        "SQLERROR",                      "92",
        "SQLEXCEPTION",                  "92", "99", "2003", "2011", "2014", "c",
        "SQLSTATE",                      "92", "99", "2003", "2011", "2014", "c",
        "SQLWARNING",                    "92", "99", "2003", "2011", "2014", "c",
        "SQRT",                                              "2011", "2014", "c",
        "START",                               "99", "2003", "2011", "2014", "c",
        "STATE",                               "99",
        "STATIC",                              "99", "2003", "2011", "2014", "c",
        "STDDEV_POP",                                        "2011", "2014", "c",
        "STDDEV_SAMP",                                       "2011", "2014", "c",
        "STREAM",                                                            "c",
        "SUBMULTISET",                               "2003", "2011", "2014", "c",
        "SUBSET",                                                    "2014", "c",
        "SUBSTRING",                     "92",               "2011", "2014", "c",
        "SUBSTRING_REGEX",                                   "2011", "2014", "c",
        "SUCCEEDS",                                                  "2014", "c",
        "SUM",                           "92",               "2011", "2014", "c",
        "SYMMETRIC",                           "99", "2003", "2011", "2014", "c",
        "SYSTEM",                              "99", "2003", "2011", "2014", "c",
        "SYSTEM_TIME",                                               "2014", "c",
        "SYSTEM_USER",                   "92", "99", "2003", "2011", "2014", "c",
        "TABLE",                         "92", "99", "2003", "2011", "2014", "c",
        "TABLESAMPLE",                               "2003", "2011", "2014", "c",
        "TEMPORARY",                     "92", "99",
        "THEN",                          "92", "99", "2003", "2011", "2014", "c",
        "TIME",                          "92", "99", "2003", "2011", "2014", "c",
        "TIMESTAMP",                     "92", "99", "2003", "2011", "2014", "c",
        "TIMEZONE_HOUR",                 "92", "99", "2003", "2011", "2014", "c",
        "TIMEZONE_MINUTE",               "92", "99", "2003", "2011", "2014", "c",
        "TINYINT",                                                           "c",
        "TO",                            "92", "99", "2003", "2011", "2014", "c",
        "TRAILING",                      "92", "99", "2003", "2011", "2014", "c",
        "TRANSACTION",                   "92", "99",
        "TRANSLATE",                     "92",               "2011", "2014", "c",
        "TRANSLATE_REGEX",                                   "2011", "2014", "c",
        "TRANSLATION",                   "92", "99", "2003", "2011", "2014", "c",
        "TREAT",                               "99", "2003", "2011", "2014", "c",
        "TRIGGER",                             "99", "2003", "2011", "2014", "c",
        "TRIM",                          "92",               "2011", "2014", "c",
        "TRIM_ARRAY",                                        "2011", "2014", "c",
        "TRUE",                          "92", "99", "2003", "2011", "2014", "c",
        "TRUNCATE",                                          "2011", "2014", "c",
        "UESCAPE",                                           "2011", "2014", "c",
        "UNDER",                               "99",
        "UNDO",                          "92", "99", "2003",
        "UNION",                         "92", "99", "2003", "2011", "2014", "c",
        "UNIQUE",                        "92", "99", "2003", "2011", "2014", "c",
        "UNKNOWN",                       "92", "99", "2003", "2011", "2014", "c",
        "UNNEST",                              "99", "2003", "2011", "2014", "c",
        "UNTIL",                         "92", "99", "2003",
        "UPDATE",                        "92", "99", "2003", "2011", "2014", "c",
        "UPPER",                         "92",               "2011", "2014", "c",
        "UPSERT",                                                            "c",
        "USAGE",                         "92", "99",
        "USER",                          "92", "99", "2003", "2011", "2014", "c",
        "USING",                         "92", "99", "2003", "2011", "2014", "c",
        "VALUE",                         "92", "99", "2003", "2011", "2014", "c",
        "VALUES",                        "92", "99", "2003", "2011", "2014", "c",
        "VALUE_OF",                                                  "2014", "c",
        "VARBINARY",                                         "2011", "2014", "c",
        "VARCHAR",                       "92", "99", "2003", "2011", "2014", "c",
        "VARYING",                       "92", "99", "2003", "2011", "2014", "c",
        "VAR_POP",                                           "2011", "2014", "c",
        "VAR_SAMP",                                          "2011", "2014", "c",
        "VERSION",                                           "2011",
        "VERSIONING",                                        "2011", "2014", "c",
        "VERSIONS",                                          "2011",
        "VIEW",                          "92", "99",
        "WHEN",                          "92", "99", "2003", "2011", "2014", "c",
        "WHENEVER",                      "92", "99", "2003", "2011", "2014", "c",
        "WHERE",                         "92", "99", "2003", "2011", "2014", "c",
        "WHILE",                         "92", "99", "2003",
        "WIDTH_BUCKET",                                      "2011", "2014", "c",
        "WINDOW",                              "99", "2003", "2011", "2014", "c",
        "WITH",                          "92", "99", "2003", "2011", "2014", "c",
        "WITHIN",                              "99", "2003", "2011", "2014", "c",
        "WITHOUT",                             "99", "2003", "2011", "2014", "c",
        "WORK",                          "92", "99",
        "WRITE",                         "92", "99",
        "YEAR",                          "92", "99", "2003", "2011", "2014", "c",
        "YEARS",                                             "2011",
        "ZONE",                          "92", "99");
test_class.type: List<String>
test_class.var_name: RESERVED_KEYWORDS
test_class.declarator: ANY = "(?s).*"
test_class.modifier: private static final
test_class.original_string: private static final String ANY = "(?s).*";
test_class.type: String
test_class.var_name: ANY
test_class.declarator: LINUXIFY =
        ThreadLocal.withInitial(() -> new boolean[] {true})
test_class.modifier: private static final
test_class.original_string: private static final ThreadLocal<boolean[]> LINUXIFY =
        ThreadLocal.withInitial(() -> new boolean[] {true});
test_class.type: ThreadLocal<boolean[]>
test_class.var_name: LINUXIFY
test_class.declarator: quoting = Quoting.DOUBLE_QUOTE
test_class.original_string: Quoting quoting = Quoting.DOUBLE_QUOTE;
test_class.type: Quoting
test_class.var_name: quoting
test_class.declarator: unquotedCasing = Casing.TO_UPPER
test_class.original_string: Casing unquotedCasing = Casing.TO_UPPER;
test_class.type: Casing
test_class.var_name: unquotedCasing
test_class.declarator: quotedCasing = Casing.UNCHANGED
test_class.original_string: Casing quotedCasing = Casing.UNCHANGED;
test_class.type: Casing
test_class.var_name: quotedCasing
test_class.declarator: conformance = SqlConformanceEnum.DEFAULT
test_class.original_string: SqlConformance conformance = SqlConformanceEnum.DEFAULT;
test_class.type: SqlConformance
test_class.var_name: conformance
test_class.file: parser/src/test/java/com/qihoo/qsql/org/apache/calcite/sql/parser/SqlParserTest.java
test_class.identifier: SqlParserTest
test_case.body: @Test public void testNoUnintendedNewReservedKeywords() {
      assumeTrue("don't run this test for sub-classes", isNotSubclass());
      final SqlAbstractParserImpl.Metadata metadata =
          getSqlParser("").getMetadata();
  
      final SortedSet<String> reservedKeywords = new TreeSet<>();
      final SortedSet<String> keywords92 = keywords("92");
      for (String s : metadata.getTokens()) {
        if (metadata.isKeyword(s) && metadata.isReservedWord(s)) {
          reservedKeywords.add(s);
        }
        if (false) {
          // Cannot enable this test yet, because the parser's list of SQL:92
          // reserved words is not consistent with keywords("92").
          assertThat(s, metadata.isSql92ReservedWord(s),
              is(keywords92.contains(s)));
        }
      }
  
      final String reason = "The parser has at least one new reserved keyword. "
          + "Are you sure it should be reserved? Difference:\n"
          + DiffTestCase.diffLines(ImmutableList.copyOf(getReservedKeywords()),
              ImmutableList.copyOf(reservedKeywords));
      assertThat(reason, reservedKeywords, is(getReservedKeywords()));
    }
test_case.class_method_signature: SqlParserTest.testNoUnintendedNewReservedKeywords()
test_case.full_signature: @Test public void testNoUnintendedNewReservedKeywords()
test_case.identifier: testNoUnintendedNewReservedKeywords
test_case.invocations: assumeTrue isNotSubclass getMetadata getSqlParser keywords getTokens isKeyword isReservedWord add assertThat isSql92ReservedWord is contains diffLines copyOf getReservedKeywords copyOf assertThat is getReservedKeywords
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testNoUnintendedNewReservedKeywords()
focal_class.declarator: DEFAULT_IDENTIFIER_MAX_LENGTH = 128
focal_class.modifier: public static final
focal_class.original_string: public static final int DEFAULT_IDENTIFIER_MAX_LENGTH = 128;
focal_class.type: int
focal_class.var_name: DEFAULT_IDENTIFIER_MAX_LENGTH
focal_class.declarator: DEFAULT_ALLOW_BANG_EQUAL =
        SqlConformanceEnum.DEFAULT.isBangEqualAllowed()
focal_class.modifier: @Deprecated // to be removed before 2.0
    public static final
focal_class.original_string: @Deprecated // to be removed before 2.0
    public static final boolean DEFAULT_ALLOW_BANG_EQUAL =
        SqlConformanceEnum.DEFAULT.isBangEqualAllowed();
focal_class.type: boolean
focal_class.var_name: DEFAULT_ALLOW_BANG_EQUAL
focal_class.declarator: parser
focal_class.modifier: private final
focal_class.original_string: private final SqlAbstractParserImpl parser;
focal_class.type: SqlAbstractParserImpl
focal_class.var_name: parser
focal_class.file: parser/src/main/java/com/qihoo/qsql/org/apache/calcite/sql/parser/SqlParser.java
focal_class.identifier: SqlParser
focal_class.class_method_signature: SqlParser.SqlParser(SqlAbstractParserImpl parser,
        Config config)
focal_class.full_signature: private  SqlParser(SqlAbstractParserImpl parser,
        Config config)
focal_class.identifier: SqlParser
focal_class.modifiers: private
focal_class.parameters: (SqlAbstractParserImpl parser,
        Config config)
focal_class.signature:  SqlParser(SqlAbstractParserImpl parser,
        Config config)
focal_class.class_method_signature: SqlParser.create(String s)
focal_class.full_signature: public static SqlParser create(String s)
focal_class.identifier: create
focal_class.modifiers: public static
focal_class.parameters: (String s)
focal_class.return: SqlParser
focal_class.signature: SqlParser create(String s)
focal_class.class_method_signature: SqlParser.create(String sql, Config config)
focal_class.full_signature: public static SqlParser create(String sql, Config config)
focal_class.identifier: create
focal_class.modifiers: public static
focal_class.parameters: (String sql, Config config)
focal_class.return: SqlParser
focal_class.signature: SqlParser create(String sql, Config config)
focal_class.class_method_signature: SqlParser.create(Reader reader, Config config)
focal_class.full_signature: public static SqlParser create(Reader reader, Config config)
focal_class.identifier: create
focal_class.modifiers: public static
focal_class.parameters: (Reader reader, Config config)
focal_class.return: SqlParser
focal_class.signature: SqlParser create(Reader reader, Config config)
focal_class.class_method_signature: SqlParser.parseExpression()
focal_class.full_signature: public SqlNode parseExpression()
focal_class.identifier: parseExpression
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: SqlNode
focal_class.signature: SqlNode parseExpression()
focal_class.class_method_signature: SqlParser.handleException(Throwable ex)
focal_class.full_signature: private SqlParseException handleException(Throwable ex)
focal_class.identifier: handleException
focal_class.modifiers: private
focal_class.parameters: (Throwable ex)
focal_class.return: SqlParseException
focal_class.signature: SqlParseException handleException(Throwable ex)
focal_class.class_method_signature: SqlParser.parseQuery()
focal_class.full_signature: public SqlNode parseQuery()
focal_class.identifier: parseQuery
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: SqlNode
focal_class.signature: SqlNode parseQuery()
focal_class.class_method_signature: SqlParser.parseQuery(String sql)
focal_class.full_signature: public SqlNode parseQuery(String sql)
focal_class.identifier: parseQuery
focal_class.modifiers: public
focal_class.parameters: (String sql)
focal_class.return: SqlNode
focal_class.signature: SqlNode parseQuery(String sql)
focal_class.class_method_signature: SqlParser.parseStmt()
focal_class.full_signature: public SqlNode parseStmt()
focal_class.identifier: parseStmt
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: SqlNode
focal_class.signature: SqlNode parseStmt()
focal_class.class_method_signature: SqlParser.parseStmtList()
focal_class.full_signature: public SqlNodeList parseStmtList()
focal_class.identifier: parseStmtList
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: SqlNodeList
focal_class.signature: SqlNodeList parseStmtList()
focal_class.class_method_signature: SqlParser.getMetadata()
focal_class.full_signature: public SqlAbstractParserImpl.Metadata getMetadata()
focal_class.identifier: getMetadata
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: SqlAbstractParserImpl.Metadata
focal_class.signature: SqlAbstractParserImpl.Metadata getMetadata()
focal_class.class_method_signature: SqlParser.configBuilder()
focal_class.full_signature: public static ConfigBuilder configBuilder()
focal_class.identifier: configBuilder
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: ConfigBuilder
focal_class.signature: ConfigBuilder configBuilder()
focal_class.class_method_signature: SqlParser.configBuilder(Config config)
focal_class.full_signature: public static ConfigBuilder configBuilder(Config config)
focal_class.identifier: configBuilder
focal_class.modifiers: public static
focal_class.parameters: (Config config)
focal_class.return: ConfigBuilder
focal_class.signature: ConfigBuilder configBuilder(Config config)
focal_method.body: public SqlAbstractParserImpl.Metadata getMetadata() {
      return parser.getMetadata();
    }
focal_method.class_method_signature: SqlParser.getMetadata()
focal_method.full_signature: public SqlAbstractParserImpl.Metadata getMetadata()
focal_method.identifier: getMetadata
focal_method.invocations: getMetadata
focal_method.modifiers: public
focal_method.parameters: ()
focal_method.return: SqlAbstractParserImpl.Metadata
focal_method.signature: SqlAbstractParserImpl.Metadata getMetadata()