{
  "$schema": "https://tree-sitter.github.io/tree-sitter/assets/schemas/grammar.schema.json",
  "name": "sql",
  "word": "_identifier",
  "rules": {
    "program": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "transaction"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "statement"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "block"
                  }
                ]
              },
              {
                "type": "STRING",
                "value": ";"
              }
            ]
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "statement"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "comment": {
      "type": "PATTERN",
      "value": "--.*"
    },
    "marginalia": {
      "type": "PATTERN",
      "value": "\\/\\*[^*]*\\*+(?:[^/*][^*]*\\*+)*\\/"
    },
    "keyword_select": {
      "type": "PATTERN",
      "value": "[sS][eE][lL][eE][cC][tT]"
    },
    "keyword_delete": {
      "type": "PATTERN",
      "value": "[dD][eE][lL][eE][tT][eE]"
    },
    "keyword_insert": {
      "type": "PATTERN",
      "value": "[iI][nN][sS][eE][rR][tT]"
    },
    "keyword_replace": {
      "type": "PATTERN",
      "value": "[rR][eE][pP][lL][aA][cC][eE]"
    },
    "keyword_update": {
      "type": "PATTERN",
      "value": "[uU][pP][dD][aA][tT][eE]"
    },
    "keyword_truncate": {
      "type": "PATTERN",
      "value": "[tT][rR][uU][nN][cC][aA][tT][eE]"
    },
    "keyword_merge": {
      "type": "PATTERN",
      "value": "[mM][eE][rR][gG][eE]"
    },
    "keyword_show": {
      "type": "PATTERN",
      "value": "[sS][hH][oO][wW]"
    },
    "keyword_unload": {
      "type": "PATTERN",
      "value": "[uU][nN][lL][oO][aA][dD]"
    },
    "keyword_into": {
      "type": "PATTERN",
      "value": "[iI][nN][tT][oO]"
    },
    "keyword_overwrite": {
      "type": "PATTERN",
      "value": "[oO][vV][eE][rR][wW][rR][iI][tT][eE]"
    },
    "keyword_values": {
      "type": "PATTERN",
      "value": "[vV][aA][lL][uU][eE][sS]"
    },
    "keyword_value": {
      "type": "PATTERN",
      "value": "[vV][aA][lL][uU][eE]"
    },
    "keyword_matched": {
      "type": "PATTERN",
      "value": "[mM][aA][tT][cC][hH][eE][dD]"
    },
    "keyword_set": {
      "type": "PATTERN",
      "value": "[sS][eE][tT]"
    },
    "keyword_from": {
      "type": "PATTERN",
      "value": "[fF][rR][oO][mM]"
    },
    "keyword_left": {
      "type": "PATTERN",
      "value": "[lL][eE][fF][tT]"
    },
    "keyword_right": {
      "type": "PATTERN",
      "value": "[rR][iI][gG][hH][tT]"
    },
    "keyword_inner": {
      "type": "PATTERN",
      "value": "[iI][nN][nN][eE][rR]"
    },
    "keyword_full": {
      "type": "PATTERN",
      "value": "[fF][uU][lL][lL]"
    },
    "keyword_outer": {
      "type": "PATTERN",
      "value": "[oO][uU][tT][eE][rR]"
    },
    "keyword_cross": {
      "type": "PATTERN",
      "value": "[cC][rR][oO][sS][sS]"
    },
    "keyword_join": {
      "type": "PATTERN",
      "value": "[jJ][oO][iI][nN]"
    },
    "keyword_lateral": {
      "type": "PATTERN",
      "value": "[lL][aA][tT][eE][rR][aA][lL]"
    },
    "keyword_natural": {
      "type": "PATTERN",
      "value": "[nN][aA][tT][uU][rR][aA][lL]"
    },
    "keyword_on": {
      "type": "PATTERN",
      "value": "[oO][nN]"
    },
    "keyword_off": {
      "type": "PATTERN",
      "value": "[oO][fF][fF]"
    },
    "keyword_where": {
      "type": "PATTERN",
      "value": "[wW][hH][eE][rR][eE]"
    },
    "keyword_order": {
      "type": "PATTERN",
      "value": "[oO][rR][dD][eE][rR]"
    },
    "keyword_group": {
      "type": "PATTERN",
      "value": "[gG][rR][oO][uU][pP]"
    },
    "keyword_partition": {
      "type": "PATTERN",
      "value": "[pP][aA][rR][tT][iI][tT][iI][oO][nN]"
    },
    "keyword_by": {
      "type": "PATTERN",
      "value": "[bB][yY]"
    },
    "keyword_having": {
      "type": "PATTERN",
      "value": "[hH][aA][vV][iI][nN][gG]"
    },
    "keyword_desc": {
      "type": "PATTERN",
      "value": "[dD][eE][sS][cC]"
    },
    "keyword_asc": {
      "type": "PATTERN",
      "value": "[aA][sS][cC]"
    },
    "keyword_limit": {
      "type": "PATTERN",
      "value": "[lL][iI][mM][iI][tT]"
    },
    "keyword_offset": {
      "type": "PATTERN",
      "value": "[oO][fF][fF][sS][eE][tT]"
    },
    "keyword_primary": {
      "type": "PATTERN",
      "value": "[pP][rR][iI][mM][aA][rR][yY]"
    },
    "keyword_create": {
      "type": "PATTERN",
      "value": "[cC][rR][eE][aA][tT][eE]"
    },
    "keyword_alter": {
      "type": "PATTERN",
      "value": "[aA][lL][tT][eE][rR]"
    },
    "keyword_change": {
      "type": "PATTERN",
      "value": "[cC][hH][aA][nN][gG][eE]"
    },
    "keyword_analyze": {
      "type": "PATTERN",
      "value": "[aA][nN][aA][lL][yY][zZ][eE]"
    },
    "keyword_explain": {
      "type": "PATTERN",
      "value": "[eE][xX][pP][lL][aA][iI][nN]"
    },
    "keyword_verbose": {
      "type": "PATTERN",
      "value": "[vV][eE][rR][bB][oO][sS][eE]"
    },
    "keyword_modify": {
      "type": "PATTERN",
      "value": "[mM][oO][dD][iI][fF][yY]"
    },
    "keyword_drop": {
      "type": "PATTERN",
      "value": "[dD][rR][oO][pP]"
    },
    "keyword_add": {
      "type": "PATTERN",
      "value": "[aA][dD][dD]"
    },
    "keyword_table": {
      "type": "PATTERN",
      "value": "[tT][aA][bB][lL][eE]"
    },
    "keyword_tables": {
      "type": "PATTERN",
      "value": "[tT][aA][bB][lL][eE][sS]"
    },
    "keyword_view": {
      "type": "PATTERN",
      "value": "[vV][iI][eE][wW]"
    },
    "keyword_policy": {
      "type": "PATTERN",
      "value": "[pP][oO][lL][iI][cC][yY]"
    },
    "keyword_column": {
      "type": "PATTERN",
      "value": "[cC][oO][lL][uU][mM][nN]"
    },
    "keyword_columns": {
      "type": "PATTERN",
      "value": "[cC][oO][lL][uU][mM][nN][sS]"
    },
    "keyword_materialized": {
      "type": "PATTERN",
      "value": "[mM][aA][tT][eE][rR][iI][aA][lL][iI][zZ][eE][dD]"
    },
    "keyword_tablespace": {
      "type": "PATTERN",
      "value": "[tT][aA][bB][lL][eE][sS][pP][aA][cC][eE]"
    },
    "keyword_split": {
      "type": "PATTERN",
      "value": "[sS][pP][lL][iI][tT]"
    },
    "keyword_tablets": {
      "type": "PATTERN",
      "value": "[tT][aA][bB][lL][eE][tT][sS]"
    },
    "keyword_sequence": {
      "type": "PATTERN",
      "value": "[sS][eE][qQ][uU][eE][nN][cC][eE]"
    },
    "keyword_increment": {
      "type": "PATTERN",
      "value": "[iI][nN][cC][rR][eE][mM][eE][nN][tT]"
    },
    "keyword_minvalue": {
      "type": "PATTERN",
      "value": "[mM][iI][nN][vV][aA][lL][uU][eE]"
    },
    "keyword_maxvalue": {
      "type": "PATTERN",
      "value": "[mM][aA][xX][vV][aA][lL][uU][eE]"
    },
    "keyword_none": {
      "type": "PATTERN",
      "value": "[nN][oO][nN][eE]"
    },
    "keyword_owned": {
      "type": "PATTERN",
      "value": "[oO][wW][nN][eE][dD]"
    },
    "keyword_start": {
      "type": "PATTERN",
      "value": "[sS][tT][aA][rR][tT]"
    },
    "keyword_restart": {
      "type": "PATTERN",
      "value": "[rR][eE][sS][tT][aA][rR][tT]"
    },
    "keyword_key": {
      "type": "PATTERN",
      "value": "[kK][eE][yY]"
    },
    "keyword_duplicate": {
      "type": "PATTERN",
      "value": "[dD][uU][pP][lL][iI][cC][aA][tT][eE]"
    },
    "keyword_as": {
      "type": "PATTERN",
      "value": "[aA][sS]"
    },
    "keyword_distinct": {
      "type": "PATTERN",
      "value": "[dD][iI][sS][tT][iI][nN][cC][tT]"
    },
    "keyword_constraint": {
      "type": "PATTERN",
      "value": "[cC][oO][nN][sS][tT][rR][aA][iI][nN][tT]"
    },
    "keyword_filter": {
      "type": "PATTERN",
      "value": "[fF][iI][lL][tT][eE][rR]"
    },
    "keyword_cast": {
      "type": "PATTERN",
      "value": "[cC][aA][sS][tT]"
    },
    "keyword_separator": {
      "type": "PATTERN",
      "value": "[sS][eE][pP][aA][rR][aA][tT][oO][rR]"
    },
    "keyword_case": {
      "type": "PATTERN",
      "value": "[cC][aA][sS][eE]"
    },
    "keyword_when": {
      "type": "PATTERN",
      "value": "[wW][hH][eE][nN]"
    },
    "keyword_then": {
      "type": "PATTERN",
      "value": "[tT][hH][eE][nN]"
    },
    "keyword_else": {
      "type": "PATTERN",
      "value": "[eE][lL][sS][eE]"
    },
    "keyword_end": {
      "type": "PATTERN",
      "value": "[eE][nN][dD]"
    },
    "keyword_in": {
      "type": "PATTERN",
      "value": "[iI][nN]"
    },
    "keyword_and": {
      "type": "PATTERN",
      "value": "[aA][nN][dD]"
    },
    "keyword_or": {
      "type": "PATTERN",
      "value": "[oO][rR]"
    },
    "keyword_is": {
      "type": "PATTERN",
      "value": "[iI][sS]"
    },
    "keyword_not": {
      "type": "PATTERN",
      "value": "[nN][oO][tT]"
    },
    "keyword_enable": {
      "type": "PATTERN",
      "value": "[eE][nN][aA][bB][lL][eE]"
    },
    "keyword_disable": {
      "type": "PATTERN",
      "value": "[dD][iI][sS][aA][bB][lL][eE]"
    },
    "keyword_force": {
      "type": "PATTERN",
      "value": "[fF][oO][rR][cC][eE]"
    },
    "keyword_ignore": {
      "type": "PATTERN",
      "value": "[iI][gG][nN][oO][rR][eE]"
    },
    "keyword_using": {
      "type": "PATTERN",
      "value": "[uU][sS][iI][nN][gG]"
    },
    "keyword_use": {
      "type": "PATTERN",
      "value": "[uU][sS][eE]"
    },
    "keyword_index": {
      "type": "PATTERN",
      "value": "[iI][nN][dD][eE][xX]"
    },
    "keyword_include": {
      "type": "PATTERN",
      "value": "[iI][nN][cC][lL][uU][dD][eE]"
    },
    "keyword_for": {
      "type": "PATTERN",
      "value": "[fF][oO][rR]"
    },
    "keyword_if": {
      "type": "PATTERN",
      "value": "[iI][fF]"
    },
    "keyword_exists": {
      "type": "PATTERN",
      "value": "[eE][xX][iI][sS][tT][sS]"
    },
    "keyword_auto_increment": {
      "type": "PATTERN",
      "value": "[aA][uU][tT][oO][__][iI][nN][cC][rR][eE][mM][eE][nN][tT]"
    },
    "keyword_generated": {
      "type": "PATTERN",
      "value": "[gG][eE][nN][eE][rR][aA][tT][eE][dD]"
    },
    "keyword_always": {
      "type": "PATTERN",
      "value": "[aA][lL][wW][aA][yY][sS]"
    },
    "keyword_collate": {
      "type": "PATTERN",
      "value": "[cC][oO][lL][lL][aA][tT][eE]"
    },
    "keyword_character": {
      "type": "PATTERN",
      "value": "[cC][hH][aA][rR][aA][cC][tT][eE][rR]"
    },
    "keyword_engine": {
      "type": "PATTERN",
      "value": "[eE][nN][gG][iI][nN][eE]"
    },
    "keyword_default": {
      "type": "PATTERN",
      "value": "[dD][eE][fF][aA][uU][lL][tT]"
    },
    "keyword_cascade": {
      "type": "PATTERN",
      "value": "[cC][aA][sS][cC][aA][dD][eE]"
    },
    "keyword_restrict": {
      "type": "PATTERN",
      "value": "[rR][eE][sS][tT][rR][iI][cC][tT]"
    },
    "keyword_with": {
      "type": "PATTERN",
      "value": "[wW][iI][tT][hH]"
    },
    "keyword_without": {
      "type": "PATTERN",
      "value": "[wW][iI][tT][hH][oO][uU][tT]"
    },
    "keyword_no": {
      "type": "PATTERN",
      "value": "[nN][oO]"
    },
    "keyword_data": {
      "type": "PATTERN",
      "value": "[dD][aA][tT][aA]"
    },
    "keyword_type": {
      "type": "PATTERN",
      "value": "[tT][yY][pP][eE]"
    },
    "keyword_refresh": {
      "type": "PATTERN",
      "value": "[rR][eE][fF][rR][eE][sS][hH]"
    },
    "keyword_rename": {
      "type": "PATTERN",
      "value": "[rR][eE][nN][aA][mM][eE]"
    },
    "keyword_to": {
      "type": "PATTERN",
      "value": "[tT][oO]"
    },
    "keyword_database": {
      "type": "PATTERN",
      "value": "[dD][aA][tT][aA][bB][aA][sS][eE]"
    },
    "keyword_schema": {
      "type": "PATTERN",
      "value": "[sS][cC][hH][eE][mM][aA]"
    },
    "keyword_public": {
      "type": "PATTERN",
      "value": "[pP][uU][bB][lL][iI][cC]"
    },
    "keyword_owner": {
      "type": "PATTERN",
      "value": "[oO][wW][nN][eE][rR]"
    },
    "keyword_user": {
      "type": "PATTERN",
      "value": "[uU][sS][eE][rR]"
    },
    "keyword_current_user": {
      "type": "PATTERN",
      "value": "[cC][uU][rR][rR][eE][nN][tT][__][uU][sS][eE][rR]"
    },
    "keyword_session_user": {
      "type": "PATTERN",
      "value": "[sS][eE][sS][sS][iI][oO][nN][__][uU][sS][eE][rR]"
    },
    "keyword_admin": {
      "type": "PATTERN",
      "value": "[aA][dD][mM][iI][nN]"
    },
    "keyword_password": {
      "type": "PATTERN",
      "value": "[pP][aA][sS][sS][wW][oO][rR][dD]"
    },
    "keyword_encrypted": {
      "type": "PATTERN",
      "value": "[eE][nN][cC][rR][yY][pP][tT][eE][dD]"
    },
    "keyword_valid": {
      "type": "PATTERN",
      "value": "[vV][aA][lL][iI][dD]"
    },
    "keyword_until": {
      "type": "PATTERN",
      "value": "[uU][nN][tT][iI][lL]"
    },
    "keyword_connection": {
      "type": "PATTERN",
      "value": "[cC][oO][nN][nN][eE][cC][tT][iI][oO][nN]"
    },
    "keyword_role": {
      "type": "PATTERN",
      "value": "[rR][oO][lL][eE]"
    },
    "keyword_current_role": {
      "type": "PATTERN",
      "value": "[cC][uU][rR][rR][eE][nN][tT][__][rR][oO][lL][eE]"
    },
    "keyword_reset": {
      "type": "PATTERN",
      "value": "[rR][eE][sS][eE][tT]"
    },
    "keyword_temp": {
      "type": "PATTERN",
      "value": "[tT][eE][mM][pP]"
    },
    "keyword_temporary": {
      "type": "PATTERN",
      "value": "[tT][eE][mM][pP][oO][rR][aA][rR][yY]"
    },
    "keyword_unlogged": {
      "type": "PATTERN",
      "value": "[uU][nN][lL][oO][gG][gG][eE][dD]"
    },
    "keyword_logged": {
      "type": "PATTERN",
      "value": "[lL][oO][gG][gG][eE][dD]"
    },
    "keyword_cycle": {
      "type": "PATTERN",
      "value": "[cC][yY][cC][lL][eE]"
    },
    "keyword_union": {
      "type": "PATTERN",
      "value": "[uU][nN][iI][oO][nN]"
    },
    "keyword_all": {
      "type": "PATTERN",
      "value": "[aA][lL][lL]"
    },
    "keyword_any": {
      "type": "PATTERN",
      "value": "[aA][nN][yY]"
    },
    "keyword_some": {
      "type": "PATTERN",
      "value": "[sS][oO][mM][eE]"
    },
    "keyword_except": {
      "type": "PATTERN",
      "value": "[eE][xX][cC][eE][pP][tT]"
    },
    "keyword_intersect": {
      "type": "PATTERN",
      "value": "[iI][nN][tT][eE][rR][sS][eE][cC][tT]"
    },
    "keyword_returning": {
      "type": "PATTERN",
      "value": "[rR][eE][tT][uU][rR][nN][iI][nN][gG]"
    },
    "keyword_begin": {
      "type": "PATTERN",
      "value": "[bB][eE][gG][iI][nN]"
    },
    "keyword_commit": {
      "type": "PATTERN",
      "value": "[cC][oO][mM][mM][iI][tT]"
    },
    "keyword_rollback": {
      "type": "PATTERN",
      "value": "[rR][oO][lL][lL][bB][aA][cC][kK]"
    },
    "keyword_transaction": {
      "type": "PATTERN",
      "value": "[tT][rR][aA][nN][sS][aA][cC][tT][iI][oO][nN]"
    },
    "keyword_over": {
      "type": "PATTERN",
      "value": "[oO][vV][eE][rR]"
    },
    "keyword_nulls": {
      "type": "PATTERN",
      "value": "[nN][uU][lL][lL][sS]"
    },
    "keyword_first": {
      "type": "PATTERN",
      "value": "[fF][iI][rR][sS][tT]"
    },
    "keyword_after": {
      "type": "PATTERN",
      "value": "[aA][fF][tT][eE][rR]"
    },
    "keyword_before": {
      "type": "PATTERN",
      "value": "[bB][eE][fF][oO][rR][eE]"
    },
    "keyword_last": {
      "type": "PATTERN",
      "value": "[lL][aA][sS][tT]"
    },
    "keyword_window": {
      "type": "PATTERN",
      "value": "[wW][iI][nN][dD][oO][wW]"
    },
    "keyword_range": {
      "type": "PATTERN",
      "value": "[rR][aA][nN][gG][eE]"
    },
    "keyword_rows": {
      "type": "PATTERN",
      "value": "[rR][oO][wW][sS]"
    },
    "keyword_groups": {
      "type": "PATTERN",
      "value": "[gG][rR][oO][uU][pP][sS]"
    },
    "keyword_between": {
      "type": "PATTERN",
      "value": "[bB][eE][tT][wW][eE][eE][nN]"
    },
    "keyword_unbounded": {
      "type": "PATTERN",
      "value": "[uU][nN][bB][oO][uU][nN][dD][eE][dD]"
    },
    "keyword_preceding": {
      "type": "PATTERN",
      "value": "[pP][rR][eE][cC][eE][dD][iI][nN][gG]"
    },
    "keyword_following": {
      "type": "PATTERN",
      "value": "[fF][oO][lL][lL][oO][wW][iI][nN][gG]"
    },
    "keyword_permissive": {
      "type": "PATTERN",
      "value": "[pP][eE][rR][mM][iI][sS][sS][iI][vV][eE]"
    },
    "keyword_restrictive": {
      "type": "PATTERN",
      "value": "[rR][eE][sS][tT][rR][iI][cC][tT][iI][vV][eE]"
    },
    "keyword_exclude": {
      "type": "PATTERN",
      "value": "[eE][xX][cC][lL][uU][dD][eE]"
    },
    "keyword_current": {
      "type": "PATTERN",
      "value": "[cC][uU][rR][rR][eE][nN][tT]"
    },
    "keyword_row": {
      "type": "PATTERN",
      "value": "[rR][oO][wW]"
    },
    "keyword_ties": {
      "type": "PATTERN",
      "value": "[tT][iI][eE][sS]"
    },
    "keyword_others": {
      "type": "PATTERN",
      "value": "[oO][tT][hH][eE][rR][sS]"
    },
    "keyword_only": {
      "type": "PATTERN",
      "value": "[oO][nN][lL][yY]"
    },
    "keyword_unique": {
      "type": "PATTERN",
      "value": "[uU][nN][iI][qQ][uU][eE]"
    },
    "keyword_foreign": {
      "type": "PATTERN",
      "value": "[fF][oO][rR][eE][iI][gG][nN]"
    },
    "keyword_references": {
      "type": "PATTERN",
      "value": "[rR][eE][fF][eE][rR][eE][nN][cC][eE][sS]"
    },
    "keyword_concurrently": {
      "type": "PATTERN",
      "value": "[cC][oO][nN][cC][uU][rR][rR][eE][nN][tT][lL][yY]"
    },
    "keyword_btree": {
      "type": "PATTERN",
      "value": "[bB][tT][rR][eE][eE]"
    },
    "keyword_hash": {
      "type": "PATTERN",
      "value": "[hH][aA][sS][hH]"
    },
    "keyword_gist": {
      "type": "PATTERN",
      "value": "[gG][iI][sS][tT]"
    },
    "keyword_spgist": {
      "type": "PATTERN",
      "value": "[sS][pP][gG][iI][sS][tT]"
    },
    "keyword_gin": {
      "type": "PATTERN",
      "value": "[gG][iI][nN]"
    },
    "keyword_brin": {
      "type": "PATTERN",
      "value": "[bB][rR][iI][nN]"
    },
    "keyword_like": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[lL][iI][kK][eE]"
        },
        {
          "type": "PATTERN",
          "value": "[iI][lL][iI][kK][eE]"
        }
      ]
    },
    "keyword_rlike": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[rR][lL][iI][kK][eE]"
        },
        {
          "type": "PATTERN",
          "value": "[rR][eE][gG][eE][xX][pP]"
        }
      ]
    },
    "keyword_similar": {
      "type": "PATTERN",
      "value": "[sS][iI][mM][iI][lL][aA][rR]"
    },
    "keyword_unsigned": {
      "type": "PATTERN",
      "value": "[uU][nN][sS][iI][gG][nN][eE][dD]"
    },
    "keyword_zerofill": {
      "type": "PATTERN",
      "value": "[zZ][eE][rR][oO][fF][iI][lL][lL]"
    },
    "keyword_conflict": {
      "type": "PATTERN",
      "value": "[cC][oO][nN][fF][lL][iI][cC][tT]"
    },
    "keyword_do": {
      "type": "PATTERN",
      "value": "[dD][oO]"
    },
    "keyword_nothing": {
      "type": "PATTERN",
      "value": "[nN][oO][tT][hH][iI][nN][gG]"
    },
    "keyword_high_priority": {
      "type": "PATTERN",
      "value": "[hH][iI][gG][hH][__][pP][rR][iI][oO][rR][iI][tT][yY]"
    },
    "keyword_low_priority": {
      "type": "PATTERN",
      "value": "[lL][oO][wW][__][pP][rR][iI][oO][rR][iI][tT][yY]"
    },
    "keyword_delayed": {
      "type": "PATTERN",
      "value": "[dD][eE][lL][aA][yY][eE][dD]"
    },
    "keyword_recursive": {
      "type": "PATTERN",
      "value": "[rR][eE][cC][uU][rR][sS][iI][vV][eE]"
    },
    "keyword_cascaded": {
      "type": "PATTERN",
      "value": "[cC][aA][sS][cC][aA][dD][eE][dD]"
    },
    "keyword_local": {
      "type": "PATTERN",
      "value": "[lL][oO][cC][aA][lL]"
    },
    "keyword_current_timestamp": {
      "type": "PATTERN",
      "value": "[cC][uU][rR][rR][eE][nN][tT][__][tT][iI][mM][eE][sS][tT][aA][mM][pP]"
    },
    "keyword_check": {
      "type": "PATTERN",
      "value": "[cC][hH][eE][cC][kK]"
    },
    "keyword_option": {
      "type": "PATTERN",
      "value": "[oO][pP][tT][iI][oO][nN]"
    },
    "keyword_vacuum": {
      "type": "PATTERN",
      "value": "[vV][aA][cC][uU][uU][mM]"
    },
    "keyword_wait": {
      "type": "PATTERN",
      "value": "[wW][aA][iI][tT]"
    },
    "keyword_nowait": {
      "type": "PATTERN",
      "value": "[nN][oO][wW][aA][iI][tT]"
    },
    "keyword_attribute": {
      "type": "PATTERN",
      "value": "[aA][tT][tT][rR][iI][bB][uU][tT][eE]"
    },
    "keyword_authorization": {
      "type": "PATTERN",
      "value": "[aA][uU][tT][hH][oO][rR][iI][zZ][aA][tT][iI][oO][nN]"
    },
    "keyword_action": {
      "type": "PATTERN",
      "value": "[aA][cC][tT][iI][oO][nN]"
    },
    "keyword_extension": {
      "type": "PATTERN",
      "value": "[eE][xX][tT][eE][nN][sS][iI][oO][nN]"
    },
    "keyword_copy": {
      "type": "PATTERN",
      "value": "[cC][oO][pP][yY]"
    },
    "keyword_stdin": {
      "type": "PATTERN",
      "value": "[sS][tT][dD][iI][nN]"
    },
    "keyword_freeze": {
      "type": "PATTERN",
      "value": "[fF][rR][eE][eE][zZ][eE]"
    },
    "keyword_escape": {
      "type": "PATTERN",
      "value": "[eE][sS][cC][aA][pP][eE]"
    },
    "keyword_encoding": {
      "type": "PATTERN",
      "value": "[eE][nN][cC][oO][dD][iI][nN][gG]"
    },
    "keyword_force_quote": {
      "type": "PATTERN",
      "value": "[fF][oO][rR][cC][eE][__][qQ][uU][oO][tT][eE]"
    },
    "keyword_quote": {
      "type": "PATTERN",
      "value": "[qQ][uU][oO][tT][eE]"
    },
    "keyword_force_null": {
      "type": "PATTERN",
      "value": "[fF][oO][rR][cC][eE][__][nN][uU][lL][lL]"
    },
    "keyword_force_not_null": {
      "type": "PATTERN",
      "value": "[fF][oO][rR][cC][eE][__][nN][oO][tT][__][nN][uU][lL][lL]"
    },
    "keyword_header": {
      "type": "PATTERN",
      "value": "[hH][eE][aA][dD][eE][rR]"
    },
    "keyword_match": {
      "type": "PATTERN",
      "value": "[mM][aA][tT][cC][hH]"
    },
    "keyword_program": {
      "type": "PATTERN",
      "value": "[pP][rR][oO][gG][rR][aA][mM]"
    },
    "keyword_plain": {
      "type": "PATTERN",
      "value": "[pP][lL][aA][iI][nN]"
    },
    "keyword_extended": {
      "type": "PATTERN",
      "value": "[eE][xX][tT][eE][nN][dD][eE][dD]"
    },
    "keyword_main": {
      "type": "PATTERN",
      "value": "[mM][aA][iI][nN]"
    },
    "keyword_storage": {
      "type": "PATTERN",
      "value": "[sS][tT][oO][rR][aA][gG][eE]"
    },
    "keyword_compression": {
      "type": "PATTERN",
      "value": "[cC][oO][mM][pP][rR][eE][sS][sS][iI][oO][nN]"
    },
    "keyword_while": {
      "type": "PATTERN",
      "value": "[wW][hH][iI][lL][eE]"
    },
    "keyword_trigger": {
      "type": "PATTERN",
      "value": "[tT][rR][iI][gG][gG][eE][rR]"
    },
    "keyword_function": {
      "type": "PATTERN",
      "value": "[fF][uU][nN][cC][tT][iI][oO][nN]"
    },
    "keyword_returns": {
      "type": "PATTERN",
      "value": "[rR][eE][tT][uU][rR][nN][sS]"
    },
    "keyword_return": {
      "type": "PATTERN",
      "value": "[rR][eE][tT][uU][rR][nN]"
    },
    "keyword_setof": {
      "type": "PATTERN",
      "value": "[sS][eE][tT][oO][fF]"
    },
    "keyword_atomic": {
      "type": "PATTERN",
      "value": "[aA][tT][oO][mM][iI][cC]"
    },
    "keyword_declare": {
      "type": "PATTERN",
      "value": "[dD][eE][cC][lL][aA][rR][eE]"
    },
    "keyword_language": {
      "type": "PATTERN",
      "value": "[lL][aA][nN][gG][uU][aA][gG][eE]"
    },
    "keyword_immutable": {
      "type": "PATTERN",
      "value": "[iI][mM][mM][uU][tT][aA][bB][lL][eE]"
    },
    "keyword_stable": {
      "type": "PATTERN",
      "value": "[sS][tT][aA][bB][lL][eE]"
    },
    "keyword_volatile": {
      "type": "PATTERN",
      "value": "[vV][oO][lL][aA][tT][iI][lL][eE]"
    },
    "keyword_leakproof": {
      "type": "PATTERN",
      "value": "[lL][eE][aA][kK][pP][rR][oO][oO][fF]"
    },
    "keyword_parallel": {
      "type": "PATTERN",
      "value": "[pP][aA][rR][aA][lL][lL][eE][lL]"
    },
    "keyword_safe": {
      "type": "PATTERN",
      "value": "[sS][aA][fF][eE]"
    },
    "keyword_unsafe": {
      "type": "PATTERN",
      "value": "[uU][nN][sS][aA][fF][eE]"
    },
    "keyword_restricted": {
      "type": "PATTERN",
      "value": "[rR][eE][sS][tT][rR][iI][cC][tT][eE][dD]"
    },
    "keyword_called": {
      "type": "PATTERN",
      "value": "[cC][aA][lL][lL][eE][dD]"
    },
    "keyword_input": {
      "type": "PATTERN",
      "value": "[iI][nN][pP][uU][tT]"
    },
    "keyword_strict": {
      "type": "PATTERN",
      "value": "[sS][tT][rR][iI][cC][tT]"
    },
    "keyword_cost": {
      "type": "PATTERN",
      "value": "[cC][oO][sS][tT]"
    },
    "keyword_support": {
      "type": "PATTERN",
      "value": "[sS][uU][pP][pP][oO][rR][tT]"
    },
    "keyword_definer": {
      "type": "PATTERN",
      "value": "[dD][eE][fF][iI][nN][eE][rR]"
    },
    "keyword_invoker": {
      "type": "PATTERN",
      "value": "[iI][nN][vV][oO][kK][eE][rR]"
    },
    "keyword_security": {
      "type": "PATTERN",
      "value": "[sS][eE][cC][uU][rR][iI][tT][yY]"
    },
    "keyword_version": {
      "type": "PATTERN",
      "value": "[vV][eE][rR][sS][iI][oO][nN]"
    },
    "keyword_out": {
      "type": "PATTERN",
      "value": "[oO][uU][tT]"
    },
    "keyword_inout": {
      "type": "PATTERN",
      "value": "[iI][nN][oO][uU][tT]"
    },
    "keyword_variadic": {
      "type": "PATTERN",
      "value": "[vV][aA][rR][iI][aA][dD][iI][cC]"
    },
    "keyword_ordinality": {
      "type": "PATTERN",
      "value": "[oO][rR][dD][iI][nN][aA][lL][iI][tT][yY]"
    },
    "keyword_session": {
      "type": "PATTERN",
      "value": "[sS][eE][sS][sS][iI][oO][nN]"
    },
    "keyword_isolation": {
      "type": "PATTERN",
      "value": "[iI][sS][oO][lL][aA][tT][iI][oO][nN]"
    },
    "keyword_level": {
      "type": "PATTERN",
      "value": "[lL][eE][vV][eE][lL]"
    },
    "keyword_serializable": {
      "type": "PATTERN",
      "value": "[sS][eE][rR][iI][aA][lL][iI][zZ][aA][bB][lL][eE]"
    },
    "keyword_repeatable": {
      "type": "PATTERN",
      "value": "[rR][eE][pP][eE][aA][tT][aA][bB][lL][eE]"
    },
    "keyword_read": {
      "type": "PATTERN",
      "value": "[rR][eE][aA][dD]"
    },
    "keyword_write": {
      "type": "PATTERN",
      "value": "[wW][rR][iI][tT][eE]"
    },
    "keyword_committed": {
      "type": "PATTERN",
      "value": "[cC][oO][mM][mM][iI][tT][tT][eE][dD]"
    },
    "keyword_uncommitted": {
      "type": "PATTERN",
      "value": "[uU][nN][cC][oO][mM][mM][iI][tT][tT][eE][dD]"
    },
    "keyword_deferrable": {
      "type": "PATTERN",
      "value": "[dD][eE][fF][eE][rR][rR][aA][bB][lL][eE]"
    },
    "keyword_names": {
      "type": "PATTERN",
      "value": "[nN][aA][mM][eE][sS]"
    },
    "keyword_zone": {
      "type": "PATTERN",
      "value": "[zZ][oO][nN][eE]"
    },
    "keyword_immediate": {
      "type": "PATTERN",
      "value": "[iI][mM][mM][eE][dD][iI][aA][tT][eE]"
    },
    "keyword_deferred": {
      "type": "PATTERN",
      "value": "[dD][eE][fF][eE][rR][rR][eE][dD]"
    },
    "keyword_constraints": {
      "type": "PATTERN",
      "value": "[cC][oO][nN][sS][tT][rR][aA][iI][nN][tT][sS]"
    },
    "keyword_snapshot": {
      "type": "PATTERN",
      "value": "[sS][nN][aA][pP][sS][hH][oO][tT]"
    },
    "keyword_characteristics": {
      "type": "PATTERN",
      "value": "[cC][hH][aA][rR][aA][cC][tT][eE][rR][iI][sS][tT][iI][cC][sS]"
    },
    "keyword_follows": {
      "type": "PATTERN",
      "value": "[fF][oO][lL][lL][oO][wW][sS]"
    },
    "keyword_precedes": {
      "type": "PATTERN",
      "value": "[pP][rR][eE][cC][eE][dD][eE][sS]"
    },
    "keyword_each": {
      "type": "PATTERN",
      "value": "[eE][aA][cC][hH]"
    },
    "keyword_instead": {
      "type": "PATTERN",
      "value": "[iI][nN][sS][tT][eE][aA][dD]"
    },
    "keyword_of": {
      "type": "PATTERN",
      "value": "[oO][fF]"
    },
    "keyword_initially": {
      "type": "PATTERN",
      "value": "[iI][nN][iI][tT][iI][aA][lL][lL][yY]"
    },
    "keyword_old": {
      "type": "PATTERN",
      "value": "[oO][lL][dD]"
    },
    "keyword_new": {
      "type": "PATTERN",
      "value": "[nN][eE][wW]"
    },
    "keyword_referencing": {
      "type": "PATTERN",
      "value": "[rR][eE][fF][eE][rR][eE][nN][cC][iI][nN][gG]"
    },
    "keyword_statement": {
      "type": "PATTERN",
      "value": "[sS][tT][aA][tT][eE][mM][eE][nN][tT]"
    },
    "keyword_execute": {
      "type": "PATTERN",
      "value": "[eE][xX][eE][cC][uU][tT][eE]"
    },
    "keyword_procedure": {
      "type": "PATTERN",
      "value": "[pP][rR][oO][cC][eE][dD][uU][rR][eE]"
    },
    "keyword_object_id": {
      "type": "PATTERN",
      "value": "[oO][bB][jJ][eE][cC][tT][__][iI][dD]"
    },
    "keyword_external": {
      "type": "PATTERN",
      "value": "[eE][xX][tT][eE][rR][nN][aA][lL]"
    },
    "keyword_stored": {
      "type": "PATTERN",
      "value": "[sS][tT][oO][rR][eE][dD]"
    },
    "keyword_virtual": {
      "type": "PATTERN",
      "value": "[vV][iI][rR][tT][uU][aA][lL]"
    },
    "keyword_cached": {
      "type": "PATTERN",
      "value": "[cC][aA][cC][hH][eE][dD]"
    },
    "keyword_uncached": {
      "type": "PATTERN",
      "value": "[uU][nN][cC][aA][cC][hH][eE][dD]"
    },
    "keyword_replication": {
      "type": "PATTERN",
      "value": "[rR][eE][pP][lL][iI][cC][aA][tT][iI][oO][nN]"
    },
    "keyword_tblproperties": {
      "type": "PATTERN",
      "value": "[tT][bB][lL][pP][rR][oO][pP][eE][rR][tT][iI][eE][sS]"
    },
    "keyword_compute": {
      "type": "PATTERN",
      "value": "[cC][oO][mM][pP][uU][tT][eE]"
    },
    "keyword_stats": {
      "type": "PATTERN",
      "value": "[sS][tT][aA][tT][sS]"
    },
    "keyword_statistics": {
      "type": "PATTERN",
      "value": "[sS][tT][aA][tT][iI][sS][tT][iI][cC][sS]"
    },
    "keyword_optimize": {
      "type": "PATTERN",
      "value": "[oO][pP][tT][iI][mM][iI][zZ][eE]"
    },
    "keyword_rewrite": {
      "type": "PATTERN",
      "value": "[rR][eE][wW][rR][iI][tT][eE]"
    },
    "keyword_bin_pack": {
      "type": "PATTERN",
      "value": "[bB][iI][nN][__][pP][aA][cC][kK]"
    },
    "keyword_incremental": {
      "type": "PATTERN",
      "value": "[iI][nN][cC][rR][eE][mM][eE][nN][tT][aA][lL]"
    },
    "keyword_location": {
      "type": "PATTERN",
      "value": "[lL][oO][cC][aA][tT][iI][oO][nN]"
    },
    "keyword_partitioned": {
      "type": "PATTERN",
      "value": "[pP][aA][rR][tT][iI][tT][iI][oO][nN][eE][dD]"
    },
    "keyword_comment": {
      "type": "PATTERN",
      "value": "[cC][oO][mM][mM][eE][nN][tT]"
    },
    "keyword_sort": {
      "type": "PATTERN",
      "value": "[sS][oO][rR][tT]"
    },
    "keyword_format": {
      "type": "PATTERN",
      "value": "[fF][oO][rR][mM][aA][tT]"
    },
    "keyword_delimited": {
      "type": "PATTERN",
      "value": "[dD][eE][lL][iI][mM][iI][tT][eE][dD]"
    },
    "keyword_delimiter": {
      "type": "PATTERN",
      "value": "[dD][eE][lL][iI][mM][iI][tT][eE][rR]"
    },
    "keyword_fields": {
      "type": "PATTERN",
      "value": "[fF][iI][eE][lL][dD][sS]"
    },
    "keyword_terminated": {
      "type": "PATTERN",
      "value": "[tT][eE][rR][mM][iI][nN][aA][tT][eE][dD]"
    },
    "keyword_escaped": {
      "type": "PATTERN",
      "value": "[eE][sS][cC][aA][pP][eE][dD]"
    },
    "keyword_lines": {
      "type": "PATTERN",
      "value": "[lL][iI][nN][eE][sS]"
    },
    "keyword_cache": {
      "type": "PATTERN",
      "value": "[cC][aA][cC][hH][eE]"
    },
    "keyword_metadata": {
      "type": "PATTERN",
      "value": "[mM][eE][tT][aA][dD][aA][tT][aA]"
    },
    "keyword_noscan": {
      "type": "PATTERN",
      "value": "[nN][oO][sS][cC][aA][nN]"
    },
    "keyword_parquet": {
      "type": "PATTERN",
      "value": "[pP][aA][rR][qQ][uU][eE][tT]"
    },
    "keyword_rcfile": {
      "type": "PATTERN",
      "value": "[rR][cC][fF][iI][lL][eE]"
    },
    "keyword_csv": {
      "type": "PATTERN",
      "value": "[cC][sS][vV]"
    },
    "keyword_textfile": {
      "type": "PATTERN",
      "value": "[tT][eE][xX][tT][fF][iI][lL][eE]"
    },
    "keyword_avro": {
      "type": "PATTERN",
      "value": "[aA][vV][rR][oO]"
    },
    "keyword_sequencefile": {
      "type": "PATTERN",
      "value": "[sS][eE][qQ][uU][eE][nN][cC][eE][fF][iI][lL][eE]"
    },
    "keyword_orc": {
      "type": "PATTERN",
      "value": "[oO][rR][cC]"
    },
    "keyword_jsonfile": {
      "type": "PATTERN",
      "value": "[jJ][sS][oO][nN][fF][iI][lL][eE]"
    },
    "is_not": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_is"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_not"
          }
        ]
      }
    },
    "not_like": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_not"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_like"
        }
      ]
    },
    "not_rlike": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_not"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_rlike"
        }
      ]
    },
    "similar_to": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_similar"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_to"
        }
      ]
    },
    "not_similar_to": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_not"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_similar"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_to"
        }
      ]
    },
    "distinct_from": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_is"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_distinct"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_from"
        }
      ]
    },
    "not_distinct_from": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_is"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_not"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_distinct"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_from"
        }
      ]
    },
    "_temporary": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_temp"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_temporary"
        }
      ]
    },
    "_not_null": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_not"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_null"
        }
      ]
    },
    "_primary_key": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_primary"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_key"
        }
      ]
    },
    "_if_exists": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_if"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_exists"
        }
      ]
    },
    "_if_not_exists": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_if"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_not"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_exists"
        }
      ]
    },
    "_or_replace": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_or"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_replace"
        }
      ]
    },
    "_default_null": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_default"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_null"
        }
      ]
    },
    "_current_row": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_current"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_row"
        }
      ]
    },
    "_exclude_current_row": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_exclude"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_current"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_row"
        }
      ]
    },
    "_exclude_group": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_exclude"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_group"
        }
      ]
    },
    "_exclude_no_others": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_exclude"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_no"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_others"
        }
      ]
    },
    "_exclude_ties": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_exclude"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_ties"
        }
      ]
    },
    "_check_option": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_check"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_option"
        }
      ]
    },
    "direction": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_desc"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_asc"
        }
      ]
    },
    "keyword_null": {
      "type": "PATTERN",
      "value": "[nN][uU][lL][lL]"
    },
    "keyword_true": {
      "type": "PATTERN",
      "value": "[tT][rR][uU][eE]"
    },
    "keyword_false": {
      "type": "PATTERN",
      "value": "[fF][aA][lL][sS][eE]"
    },
    "keyword_boolean": {
      "type": "PATTERN",
      "value": "[bB][oO][oO][lL][eE][aA][nN]"
    },
    "keyword_bit": {
      "type": "PATTERN",
      "value": "[bB][iI][tT]"
    },
    "keyword_binary": {
      "type": "PATTERN",
      "value": "[bB][iI][nN][aA][rR][yY]"
    },
    "keyword_varbinary": {
      "type": "PATTERN",
      "value": "[vV][aA][rR][bB][iI][nN][aA][rR][yY]"
    },
    "keyword_image": {
      "type": "PATTERN",
      "value": "[iI][mM][aA][gG][eE]"
    },
    "keyword_smallserial": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[sS][mM][aA][lL][lL][sS][eE][rR][iI][aA][lL]"
        },
        {
          "type": "PATTERN",
          "value": "[sS][eE][rR][iI][aA][lL][22]"
        }
      ]
    },
    "keyword_serial": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[sS][eE][rR][iI][aA][lL]"
        },
        {
          "type": "PATTERN",
          "value": "[sS][eE][rR][iI][aA][lL][44]"
        }
      ]
    },
    "keyword_bigserial": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[bB][iI][gG][sS][eE][rR][iI][aA][lL]"
        },
        {
          "type": "PATTERN",
          "value": "[sS][eE][rR][iI][aA][lL][88]"
        }
      ]
    },
    "keyword_tinyint": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[tT][iI][nN][yY][iI][nN][tT]"
        },
        {
          "type": "PATTERN",
          "value": "[iI][nN][tT][11]"
        }
      ]
    },
    "keyword_smallint": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[sS][mM][aA][lL][lL][iI][nN][tT]"
        },
        {
          "type": "PATTERN",
          "value": "[iI][nN][tT][22]"
        }
      ]
    },
    "keyword_mediumint": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[mM][eE][dD][iI][uU][mM][iI][nN][tT]"
        },
        {
          "type": "PATTERN",
          "value": "[iI][nN][tT][33]"
        }
      ]
    },
    "keyword_int": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[iI][nN][tT]"
        },
        {
          "type": "PATTERN",
          "value": "[iI][nN][tT][eE][gG][eE][rR]"
        },
        {
          "type": "PATTERN",
          "value": "[iI][nN][tT][44]"
        }
      ]
    },
    "keyword_bigint": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[bB][iI][gG][iI][nN][tT]"
        },
        {
          "type": "PATTERN",
          "value": "[iI][nN][tT][88]"
        }
      ]
    },
    "keyword_decimal": {
      "type": "PATTERN",
      "value": "[dD][eE][cC][iI][mM][aA][lL]"
    },
    "keyword_numeric": {
      "type": "PATTERN",
      "value": "[nN][uU][mM][eE][rR][iI][cC]"
    },
    "keyword_real": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[rR][eE][aA][lL]"
        },
        {
          "type": "PATTERN",
          "value": "[fF][lL][oO][aA][tT][44]"
        }
      ]
    },
    "keyword_float": {
      "type": "PATTERN",
      "value": "[fF][lL][oO][aA][tT]"
    },
    "keyword_double": {
      "type": "PATTERN",
      "value": "[dD][oO][uU][bB][lL][eE]"
    },
    "keyword_precision": {
      "type": "PATTERN",
      "value": "[pP][rR][eE][cC][iI][sS][iI][oO][nN]"
    },
    "keyword_inet": {
      "type": "PATTERN",
      "value": "[iI][nN][eE][tT]"
    },
    "keyword_money": {
      "type": "PATTERN",
      "value": "[mM][oO][nN][eE][yY]"
    },
    "keyword_smallmoney": {
      "type": "PATTERN",
      "value": "[sS][mM][aA][lL][lL][mM][oO][nN][eE][yY]"
    },
    "keyword_varying": {
      "type": "PATTERN",
      "value": "[vV][aA][rR][yY][iI][nN][gG]"
    },
    "keyword_char": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[cC][hH][aA][rR]"
        },
        {
          "type": "PATTERN",
          "value": "[cC][hH][aA][rR][aA][cC][tT][eE][rR]"
        }
      ]
    },
    "keyword_nchar": {
      "type": "PATTERN",
      "value": "[nN][cC][hH][aA][rR]"
    },
    "keyword_varchar": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[vV][aA][rR][cC][hH][aA][rR]"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "PATTERN",
              "value": "[cC][hH][aA][rR][aA][cC][tT][eE][rR]"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_varying"
            }
          ]
        }
      ]
    },
    "keyword_nvarchar": {
      "type": "PATTERN",
      "value": "[nN][vV][aA][rR][cC][hH][aA][rR]"
    },
    "keyword_text": {
      "type": "PATTERN",
      "value": "[tT][eE][xX][tT]"
    },
    "keyword_string": {
      "type": "PATTERN",
      "value": "[sS][tT][rR][iI][nN][gG]"
    },
    "keyword_uuid": {
      "type": "PATTERN",
      "value": "[uU][uU][iI][dD]"
    },
    "keyword_json": {
      "type": "PATTERN",
      "value": "[jJ][sS][oO][nN]"
    },
    "keyword_jsonb": {
      "type": "PATTERN",
      "value": "[jJ][sS][oO][nN][bB]"
    },
    "keyword_xml": {
      "type": "PATTERN",
      "value": "[xX][mM][lL]"
    },
    "keyword_bytea": {
      "type": "PATTERN",
      "value": "[bB][yY][tT][eE][aA]"
    },
    "keyword_enum": {
      "type": "PATTERN",
      "value": "[eE][nN][uU][mM]"
    },
    "keyword_date": {
      "type": "PATTERN",
      "value": "[dD][aA][tT][eE]"
    },
    "keyword_datetime": {
      "type": "PATTERN",
      "value": "[dD][aA][tT][eE][tT][iI][mM][eE]"
    },
    "keyword_datetime2": {
      "type": "PATTERN",
      "value": "[dD][aA][tT][eE][tT][iI][mM][eE][22]"
    },
    "keyword_smalldatetime": {
      "type": "PATTERN",
      "value": "[sS][mM][aA][lL][lL][dD][aA][tT][eE][tT][iI][mM][eE]"
    },
    "keyword_datetimeoffset": {
      "type": "PATTERN",
      "value": "[dD][aA][tT][eE][tT][iI][mM][eE][oO][fF][fF][sS][eE][tT]"
    },
    "keyword_time": {
      "type": "PATTERN",
      "value": "[tT][iI][mM][eE]"
    },
    "keyword_timestamp": {
      "type": "PATTERN",
      "value": "[tT][iI][mM][eE][sS][tT][aA][mM][pP]"
    },
    "keyword_timestamptz": {
      "type": "PATTERN",
      "value": "[tT][iI][mM][eE][sS][tT][aA][mM][pP][tT][zZ]"
    },
    "keyword_interval": {
      "type": "PATTERN",
      "value": "[iI][nN][tT][eE][rR][vV][aA][lL]"
    },
    "keyword_geometry": {
      "type": "PATTERN",
      "value": "[gG][eE][oO][mM][eE][tT][rR][yY]"
    },
    "keyword_geography": {
      "type": "PATTERN",
      "value": "[gG][eE][oO][gG][rR][aA][pP][hH][yY]"
    },
    "keyword_box2d": {
      "type": "PATTERN",
      "value": "[bB][oO][xX][22][dD]"
    },
    "keyword_box3d": {
      "type": "PATTERN",
      "value": "[bB][oO][xX][33][dD]"
    },
    "keyword_oid": {
      "type": "PATTERN",
      "value": "[oO][iI][dD]"
    },
    "keyword_oids": {
      "type": "PATTERN",
      "value": "[oO][iI][dD][sS]"
    },
    "keyword_name": {
      "type": "PATTERN",
      "value": "[nN][aA][mM][eE]"
    },
    "keyword_regclass": {
      "type": "PATTERN",
      "value": "[rR][eE][gG][cC][lL][aA][sS][sS]"
    },
    "keyword_regnamespace": {
      "type": "PATTERN",
      "value": "[rR][eE][gG][nN][aA][mM][eE][sS][pP][aA][cC][eE]"
    },
    "keyword_regproc": {
      "type": "PATTERN",
      "value": "[rR][eE][gG][pP][rR][oO][cC]"
    },
    "keyword_regtype": {
      "type": "PATTERN",
      "value": "[rR][eE][gG][tT][yY][pP][eE]"
    },
    "keyword_array": {
      "type": "PATTERN",
      "value": "[aA][rR][rR][aA][yY]"
    },
    "_type": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_boolean"
              },
              {
                "type": "SYMBOL",
                "name": "bit"
              },
              {
                "type": "SYMBOL",
                "name": "binary"
              },
              {
                "type": "SYMBOL",
                "name": "varbinary"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_image"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_smallserial"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_serial"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_bigserial"
              },
              {
                "type": "SYMBOL",
                "name": "tinyint"
              },
              {
                "type": "SYMBOL",
                "name": "smallint"
              },
              {
                "type": "SYMBOL",
                "name": "mediumint"
              },
              {
                "type": "SYMBOL",
                "name": "int"
              },
              {
                "type": "SYMBOL",
                "name": "bigint"
              },
              {
                "type": "SYMBOL",
                "name": "decimal"
              },
              {
                "type": "SYMBOL",
                "name": "numeric"
              },
              {
                "type": "SYMBOL",
                "name": "double"
              },
              {
                "type": "SYMBOL",
                "name": "float"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_money"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_smallmoney"
              },
              {
                "type": "SYMBOL",
                "name": "char"
              },
              {
                "type": "SYMBOL",
                "name": "varchar"
              },
              {
                "type": "SYMBOL",
                "name": "nchar"
              },
              {
                "type": "SYMBOL",
                "name": "nvarchar"
              },
              {
                "type": "SYMBOL",
                "name": "numeric"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_string"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_text"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_uuid"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_json"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_jsonb"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_xml"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_bytea"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_inet"
              },
              {
                "type": "SYMBOL",
                "name": "enum"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_date"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_datetime"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_datetime2"
              },
              {
                "type": "SYMBOL",
                "name": "datetimeoffset"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_smalldatetime"
              },
              {
                "type": "SYMBOL",
                "name": "time"
              },
              {
                "type": "SYMBOL",
                "name": "timestamp"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_timestamptz"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_interval"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_geometry"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_geography"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_box2d"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_box3d"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_oid"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_name"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_regclass"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_regnamespace"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_regproc"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_regtype"
              },
              {
                "type": "FIELD",
                "name": "custom_type",
                "content": {
                  "type": "SYMBOL",
                  "name": "object_reference"
                }
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "array_size_definition"
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "array_size_definition": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_array"
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_array_size_definition"
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              }
            ]
          },
          {
            "type": "REPEAT1",
            "content": {
              "type": "SYMBOL",
              "name": "_array_size_definition"
            }
          }
        ]
      }
    },
    "_array_size_definition": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "["
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "FIELD",
              "name": "size",
              "content": {
                "type": "ALIAS",
                "content": {
                  "type": "SYMBOL",
                  "name": "_integer"
                },
                "named": true,
                "value": "literal"
              }
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "STRING",
          "value": "]"
        }
      ]
    },
    "tinyint": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_unsigned"
            },
            {
              "type": "PREC_RIGHT",
              "value": 1,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_tinyint"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_tinyint"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "FIELD",
                                "name": "size",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "PREC_RIGHT",
              "value": 1,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_tinyint"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_tinyint"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "FIELD",
                                "name": "size",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unsigned"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_zerofill"
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        }
      ]
    },
    "smallint": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_unsigned"
            },
            {
              "type": "PREC_RIGHT",
              "value": 1,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_smallint"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_smallint"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "FIELD",
                                "name": "size",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "PREC_RIGHT",
              "value": 1,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_smallint"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_smallint"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "FIELD",
                                "name": "size",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unsigned"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_zerofill"
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        }
      ]
    },
    "mediumint": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_unsigned"
            },
            {
              "type": "PREC_RIGHT",
              "value": 1,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_mediumint"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_mediumint"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "FIELD",
                                "name": "size",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "PREC_RIGHT",
              "value": 1,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_mediumint"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_mediumint"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "FIELD",
                                "name": "size",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unsigned"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_zerofill"
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        }
      ]
    },
    "int": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_unsigned"
            },
            {
              "type": "PREC_RIGHT",
              "value": 1,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_int"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_int"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "FIELD",
                                "name": "size",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "PREC_RIGHT",
              "value": 1,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_int"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_int"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "FIELD",
                                "name": "size",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unsigned"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_zerofill"
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        }
      ]
    },
    "bigint": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_unsigned"
            },
            {
              "type": "PREC_RIGHT",
              "value": 1,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_bigint"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_bigint"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "FIELD",
                                "name": "size",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "PREC_RIGHT",
              "value": 1,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_bigint"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_bigint"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "FIELD",
                                "name": "size",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unsigned"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_zerofill"
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        }
      ]
    },
    "bit": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_bit"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_bit"
            },
            {
              "type": "PREC",
              "value": 0,
              "content": {
                "type": "PREC_RIGHT",
                "value": 1,
                "content": {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_varying"
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_varying"
                        },
                        {
                          "type": "SEQ",
                          "members": [
                            {
                              "type": "STRING",
                              "value": "("
                            },
                            {
                              "type": "SEQ",
                              "members": [
                                {
                                  "type": "FIELD",
                                  "name": "precision",
                                  "content": {
                                    "type": "ALIAS",
                                    "content": {
                                      "type": "SYMBOL",
                                      "name": "_natural_number"
                                    },
                                    "named": true,
                                    "value": "literal"
                                  }
                                }
                              ]
                            },
                            {
                              "type": "STRING",
                              "value": ")"
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            }
          ]
        },
        {
          "type": "PREC",
          "value": 1,
          "content": {
            "type": "PREC_RIGHT",
            "value": 1,
            "content": {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_bit"
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_bit"
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "STRING",
                          "value": "("
                        },
                        {
                          "type": "SEQ",
                          "members": [
                            {
                              "type": "FIELD",
                              "name": "precision",
                              "content": {
                                "type": "ALIAS",
                                "content": {
                                  "type": "SYMBOL",
                                  "name": "_natural_number"
                                },
                                "named": true,
                                "value": "literal"
                              }
                            }
                          ]
                        },
                        {
                          "type": "STRING",
                          "value": ")"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          }
        }
      ]
    },
    "binary": {
      "type": "PREC_RIGHT",
      "value": 1,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_binary"
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_binary"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "FIELD",
                        "name": "precision",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_natural_number"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "varbinary": {
      "type": "PREC_RIGHT",
      "value": 1,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_varbinary"
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_varbinary"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "FIELD",
                        "name": "precision",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_natural_number"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "float": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PREC_RIGHT",
          "value": 1,
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_float"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_float"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": "("
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "FIELD",
                            "name": "precision",
                            "content": {
                              "type": "ALIAS",
                              "content": {
                                "type": "SYMBOL",
                                "name": "_natural_number"
                              },
                              "named": true,
                              "value": "literal"
                            }
                          }
                        ]
                      },
                      {
                        "type": "STRING",
                        "value": ")"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unsigned"
                },
                {
                  "type": "PREC_RIGHT",
                  "value": 1,
                  "content": {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_float"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_float"
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": "("
                              },
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "FIELD",
                                    "name": "precision",
                                    "content": {
                                      "type": "ALIAS",
                                      "content": {
                                        "type": "SYMBOL",
                                        "name": "_natural_number"
                                      },
                                      "named": true,
                                      "value": "literal"
                                    }
                                  },
                                  {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "STRING",
                                        "value": ","
                                      },
                                      {
                                        "type": "FIELD",
                                        "name": "scale",
                                        "content": {
                                          "type": "ALIAS",
                                          "content": {
                                            "type": "SYMBOL",
                                            "name": "_natural_number"
                                          },
                                          "named": true,
                                          "value": "literal"
                                        }
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "STRING",
                                "value": ")"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "PREC_RIGHT",
                  "value": 1,
                  "content": {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_float"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_float"
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": "("
                              },
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "FIELD",
                                    "name": "precision",
                                    "content": {
                                      "type": "ALIAS",
                                      "content": {
                                        "type": "SYMBOL",
                                        "name": "_natural_number"
                                      },
                                      "named": true,
                                      "value": "literal"
                                    }
                                  },
                                  {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "STRING",
                                        "value": ","
                                      },
                                      {
                                        "type": "FIELD",
                                        "name": "scale",
                                        "content": {
                                          "type": "ALIAS",
                                          "content": {
                                            "type": "SYMBOL",
                                            "name": "_natural_number"
                                          },
                                          "named": true,
                                          "value": "literal"
                                        }
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "STRING",
                                "value": ")"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_unsigned"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_zerofill"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    "double": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PATTERN",
          "value": "[fF][lL][oO][aA][tT][88]"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unsigned"
                },
                {
                  "type": "PREC_RIGHT",
                  "value": 1,
                  "content": {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_double"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_double"
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": "("
                              },
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "FIELD",
                                    "name": "precision",
                                    "content": {
                                      "type": "ALIAS",
                                      "content": {
                                        "type": "SYMBOL",
                                        "name": "_natural_number"
                                      },
                                      "named": true,
                                      "value": "literal"
                                    }
                                  },
                                  {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "STRING",
                                        "value": ","
                                      },
                                      {
                                        "type": "FIELD",
                                        "name": "scale",
                                        "content": {
                                          "type": "ALIAS",
                                          "content": {
                                            "type": "SYMBOL",
                                            "name": "_natural_number"
                                          },
                                          "named": true,
                                          "value": "literal"
                                        }
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "STRING",
                                "value": ")"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "PREC_RIGHT",
                  "value": 1,
                  "content": {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_double"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_double"
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": "("
                              },
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "FIELD",
                                    "name": "precision",
                                    "content": {
                                      "type": "ALIAS",
                                      "content": {
                                        "type": "SYMBOL",
                                        "name": "_natural_number"
                                      },
                                      "named": true,
                                      "value": "literal"
                                    }
                                  },
                                  {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "STRING",
                                        "value": ","
                                      },
                                      {
                                        "type": "FIELD",
                                        "name": "scale",
                                        "content": {
                                          "type": "ALIAS",
                                          "content": {
                                            "type": "SYMBOL",
                                            "name": "_natural_number"
                                          },
                                          "named": true,
                                          "value": "literal"
                                        }
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "STRING",
                                "value": ")"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_unsigned"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_zerofill"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unsigned"
                },
                {
                  "type": "PREC_RIGHT",
                  "value": 1,
                  "content": {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_double"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_precision"
                          }
                        ]
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "SYMBOL",
                                "name": "keyword_double"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_precision"
                              }
                            ]
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": "("
                              },
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "FIELD",
                                    "name": "precision",
                                    "content": {
                                      "type": "ALIAS",
                                      "content": {
                                        "type": "SYMBOL",
                                        "name": "_natural_number"
                                      },
                                      "named": true,
                                      "value": "literal"
                                    }
                                  },
                                  {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "STRING",
                                        "value": ","
                                      },
                                      {
                                        "type": "FIELD",
                                        "name": "scale",
                                        "content": {
                                          "type": "ALIAS",
                                          "content": {
                                            "type": "SYMBOL",
                                            "name": "_natural_number"
                                          },
                                          "named": true,
                                          "value": "literal"
                                        }
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "STRING",
                                "value": ")"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "PREC_RIGHT",
                  "value": 1,
                  "content": {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_double"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_precision"
                          }
                        ]
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "SYMBOL",
                                "name": "keyword_double"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_precision"
                              }
                            ]
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": "("
                              },
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "FIELD",
                                    "name": "precision",
                                    "content": {
                                      "type": "ALIAS",
                                      "content": {
                                        "type": "SYMBOL",
                                        "name": "_natural_number"
                                      },
                                      "named": true,
                                      "value": "literal"
                                    }
                                  },
                                  {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "STRING",
                                        "value": ","
                                      },
                                      {
                                        "type": "FIELD",
                                        "name": "scale",
                                        "content": {
                                          "type": "ALIAS",
                                          "content": {
                                            "type": "SYMBOL",
                                            "name": "_natural_number"
                                          },
                                          "named": true,
                                          "value": "literal"
                                        }
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "STRING",
                                "value": ")"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_unsigned"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_zerofill"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unsigned"
                },
                {
                  "type": "PREC_RIGHT",
                  "value": 1,
                  "content": {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_real"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_real"
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": "("
                              },
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "FIELD",
                                    "name": "precision",
                                    "content": {
                                      "type": "ALIAS",
                                      "content": {
                                        "type": "SYMBOL",
                                        "name": "_natural_number"
                                      },
                                      "named": true,
                                      "value": "literal"
                                    }
                                  },
                                  {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "STRING",
                                        "value": ","
                                      },
                                      {
                                        "type": "FIELD",
                                        "name": "scale",
                                        "content": {
                                          "type": "ALIAS",
                                          "content": {
                                            "type": "SYMBOL",
                                            "name": "_natural_number"
                                          },
                                          "named": true,
                                          "value": "literal"
                                        }
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "STRING",
                                "value": ")"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "PREC_RIGHT",
                  "value": 1,
                  "content": {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_real"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_real"
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": "("
                              },
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "FIELD",
                                    "name": "precision",
                                    "content": {
                                      "type": "ALIAS",
                                      "content": {
                                        "type": "SYMBOL",
                                        "name": "_natural_number"
                                      },
                                      "named": true,
                                      "value": "literal"
                                    }
                                  },
                                  {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "STRING",
                                        "value": ","
                                      },
                                      {
                                        "type": "FIELD",
                                        "name": "scale",
                                        "content": {
                                          "type": "ALIAS",
                                          "content": {
                                            "type": "SYMBOL",
                                            "name": "_natural_number"
                                          },
                                          "named": true,
                                          "value": "literal"
                                        }
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "STRING",
                                "value": ")"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_unsigned"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_zerofill"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    "decimal": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PREC_RIGHT",
          "value": 1,
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_decimal"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_decimal"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": "("
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "FIELD",
                            "name": "precision",
                            "content": {
                              "type": "ALIAS",
                              "content": {
                                "type": "SYMBOL",
                                "name": "_natural_number"
                              },
                              "named": true,
                              "value": "literal"
                            }
                          }
                        ]
                      },
                      {
                        "type": "STRING",
                        "value": ")"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        },
        {
          "type": "PREC_RIGHT",
          "value": 1,
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_decimal"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_decimal"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": "("
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "FIELD",
                            "name": "precision",
                            "content": {
                              "type": "ALIAS",
                              "content": {
                                "type": "SYMBOL",
                                "name": "_natural_number"
                              },
                              "named": true,
                              "value": "literal"
                            }
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": ","
                              },
                              {
                                "type": "FIELD",
                                "name": "scale",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "type": "STRING",
                        "value": ")"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        }
      ]
    },
    "numeric": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PREC_RIGHT",
          "value": 1,
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_numeric"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_numeric"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": "("
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "FIELD",
                            "name": "precision",
                            "content": {
                              "type": "ALIAS",
                              "content": {
                                "type": "SYMBOL",
                                "name": "_natural_number"
                              },
                              "named": true,
                              "value": "literal"
                            }
                          }
                        ]
                      },
                      {
                        "type": "STRING",
                        "value": ")"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        },
        {
          "type": "PREC_RIGHT",
          "value": 1,
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_numeric"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_numeric"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": "("
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "FIELD",
                            "name": "precision",
                            "content": {
                              "type": "ALIAS",
                              "content": {
                                "type": "SYMBOL",
                                "name": "_natural_number"
                              },
                              "named": true,
                              "value": "literal"
                            }
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": ","
                              },
                              {
                                "type": "FIELD",
                                "name": "scale",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "type": "STRING",
                        "value": ")"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        }
      ]
    },
    "char": {
      "type": "PREC_RIGHT",
      "value": 1,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_char"
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_char"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "FIELD",
                        "name": "size",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_natural_number"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "varchar": {
      "type": "PREC_RIGHT",
      "value": 1,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_varchar"
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_varchar"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "FIELD",
                        "name": "size",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_natural_number"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "nchar": {
      "type": "PREC_RIGHT",
      "value": 1,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_nchar"
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_nchar"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "FIELD",
                        "name": "size",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_natural_number"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "nvarchar": {
      "type": "PREC_RIGHT",
      "value": 1,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_nvarchar"
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_nvarchar"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "FIELD",
                        "name": "size",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_natural_number"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "_include_time_zone": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_with"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_without"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_time"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_zone"
        }
      ]
    },
    "datetimeoffset": {
      "type": "PREC_RIGHT",
      "value": 1,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_datetimeoffset"
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_datetimeoffset"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "FIELD",
                        "name": "size",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_natural_number"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "time": {
      "type": "SEQ",
      "members": [
        {
          "type": "PREC_RIGHT",
          "value": 1,
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_time"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_time"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": "("
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "FIELD",
                            "name": "size",
                            "content": {
                              "type": "ALIAS",
                              "content": {
                                "type": "SYMBOL",
                                "name": "_natural_number"
                              },
                              "named": true,
                              "value": "literal"
                            }
                          }
                        ]
                      },
                      {
                        "type": "STRING",
                        "value": ")"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_include_time_zone"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "timestamp": {
      "type": "SEQ",
      "members": [
        {
          "type": "PREC_RIGHT",
          "value": 1,
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_timestamp"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_timestamp"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": "("
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "FIELD",
                            "name": "size",
                            "content": {
                              "type": "ALIAS",
                              "content": {
                                "type": "SYMBOL",
                                "name": "_natural_number"
                              },
                              "named": true,
                              "value": "literal"
                            }
                          }
                        ]
                      },
                      {
                        "type": "STRING",
                        "value": ")"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_include_time_zone"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "timestamptz": {
      "type": "PREC_RIGHT",
      "value": 1,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_timestamptz"
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_timestamptz"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "FIELD",
                        "name": "size",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_natural_number"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "enum": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_enum"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "FIELD",
                  "name": "value",
                  "content": {
                    "type": "ALIAS",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_literal_string"
                    },
                    "named": true,
                    "value": "literal"
                  }
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": ","
                      },
                      {
                        "type": "FIELD",
                        "name": "value",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_literal_string"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "array": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_array"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "STRING",
                  "value": "["
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "_expression"
                        },
                        {
                          "type": "REPEAT",
                          "content": {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": ","
                              },
                              {
                                "type": "SYMBOL",
                                "name": "_expression"
                              }
                            ]
                          }
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "STRING",
                  "value": "]"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "STRING",
                  "value": "("
                },
                {
                  "type": "SYMBOL",
                  "name": "_dml_read"
                },
                {
                  "type": "STRING",
                  "value": ")"
                }
              ]
            }
          ]
        }
      ]
    },
    "_column_list": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "("
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_column"
              },
              "named": true,
              "value": "column"
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "ALIAS",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_column"
                    },
                    "named": true,
                    "value": "column"
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "STRING",
          "value": ")"
        }
      ]
    },
    "_column": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_literal_string"
          },
          "named": true,
          "value": "literal"
        }
      ]
    },
    "_key_value_pair": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "key",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        },
        {
          "type": "STRING",
          "value": "="
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "ALIAS",
            "content": {
              "type": "SYMBOL",
              "name": "_literal_string"
            },
            "named": true,
            "value": "literal"
          }
        }
      ]
    },
    "column_definitions": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "("
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "column_definition"
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "SYMBOL",
                    "name": "column_definition"
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "constraints"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "STRING",
          "value": ")"
        }
      ]
    },
    "column_definition": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "FIELD",
            "name": "name",
            "content": {
              "type": "SYMBOL",
              "name": "_column"
            }
          },
          {
            "type": "FIELD",
            "name": "type",
            "content": {
              "type": "SYMBOL",
              "name": "_type"
            }
          },
          {
            "type": "REPEAT",
            "content": {
              "type": "SYMBOL",
              "name": "_column_constraint"
            }
          }
        ]
      }
    },
    "_column_comment": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_comment"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_literal_string"
          },
          "named": true,
          "value": "literal"
        }
      ]
    },
    "_column_constraint": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_null"
              },
              {
                "type": "SYMBOL",
                "name": "_not_null"
              }
            ]
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_references"
              },
              {
                "type": "SYMBOL",
                "name": "object_reference"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "identifier"
                      },
                      {
                        "type": "REPEAT",
                        "content": {
                          "type": "SEQ",
                          "members": [
                            {
                              "type": "STRING",
                              "value": ","
                            },
                            {
                              "type": "SYMBOL",
                              "name": "identifier"
                            }
                          ]
                        }
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              },
              {
                "type": "REPEAT",
                "content": {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_on"
                    },
                    {
                      "type": "CHOICE",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_delete"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_update"
                        }
                      ]
                    },
                    {
                      "type": "CHOICE",
                      "members": [
                        {
                          "type": "SEQ",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "keyword_no"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_action"
                            }
                          ]
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_restrict"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_cascade"
                        },
                        {
                          "type": "SEQ",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "keyword_set"
                            },
                            {
                              "type": "CHOICE",
                              "members": [
                                {
                                  "type": "SYMBOL",
                                  "name": "keyword_null"
                                },
                                {
                                  "type": "SYMBOL",
                                  "name": "keyword_default"
                                }
                              ]
                            },
                            {
                              "type": "CHOICE",
                              "members": [
                                {
                                  "type": "SEQ",
                                  "members": [
                                    {
                                      "type": "STRING",
                                      "value": "("
                                    },
                                    {
                                      "type": "SEQ",
                                      "members": [
                                        {
                                          "type": "SYMBOL",
                                          "name": "identifier"
                                        },
                                        {
                                          "type": "REPEAT",
                                          "content": {
                                            "type": "SEQ",
                                            "members": [
                                              {
                                                "type": "STRING",
                                                "value": ","
                                              },
                                              {
                                                "type": "SYMBOL",
                                                "name": "identifier"
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    },
                                    {
                                      "type": "STRING",
                                      "value": ")"
                                    }
                                  ]
                                },
                                {
                                  "type": "BLANK"
                                }
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "_default_expression"
          },
          {
            "type": "SYMBOL",
            "name": "_primary_key"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_auto_increment"
          },
          {
            "type": "SYMBOL",
            "name": "direction"
          },
          {
            "type": "SYMBOL",
            "name": "_column_comment"
          },
          {
            "type": "SYMBOL",
            "name": "_check_constraint"
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_generated"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_always"
                      }
                    ]
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              },
              {
                "type": "SYMBOL",
                "name": "keyword_as"
              },
              {
                "type": "SYMBOL",
                "name": "_expression"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_stored"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_virtual"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "keyword_unique"
          }
        ]
      }
    },
    "_check_constraint": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_constraint"
                },
                {
                  "type": "SYMBOL",
                  "name": "literal"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_check"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "SYMBOL",
              "name": "binary_expression"
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "_default_expression": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_default"
        },
        {
          "type": "PREC_RIGHT",
          "value": 0,
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_inner_default_expression"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_inner_default_expression"
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          }
        }
      ]
    },
    "_inner_default_expression": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "literal"
        },
        {
          "type": "SYMBOL",
          "name": "list"
        },
        {
          "type": "SYMBOL",
          "name": "cast"
        },
        {
          "type": "SYMBOL",
          "name": "binary_expression"
        },
        {
          "type": "SYMBOL",
          "name": "unary_expression"
        },
        {
          "type": "SYMBOL",
          "name": "array"
        },
        {
          "type": "SYMBOL",
          "name": "invocation"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_current_timestamp"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "implicit_cast"
          },
          "named": true,
          "value": "cast"
        }
      ]
    },
    "constraints": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": ","
        },
        {
          "type": "SYMBOL",
          "name": "constraint"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "STRING",
                "value": ","
              },
              {
                "type": "SYMBOL",
                "name": "constraint"
              }
            ]
          }
        }
      ]
    },
    "constraint": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "_constraint_literal"
        },
        {
          "type": "SYMBOL",
          "name": "_key_constraint"
        },
        {
          "type": "SYMBOL",
          "name": "_primary_key_constraint"
        },
        {
          "type": "SYMBOL",
          "name": "_check_constraint"
        }
      ]
    },
    "_constraint_literal": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_constraint"
        },
        {
          "type": "FIELD",
          "name": "name",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "_primary_key"
                },
                {
                  "type": "SYMBOL",
                  "name": "ordered_columns"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "_check_constraint"
                }
              ]
            }
          ]
        }
      ]
    },
    "_primary_key_constraint": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "_primary_key"
        },
        {
          "type": "SYMBOL",
          "name": "ordered_columns"
        }
      ]
    },
    "_key_constraint": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unique"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "CHOICE",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_index"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_key"
                        },
                        {
                          "type": "SEQ",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "keyword_nulls"
                            },
                            {
                              "type": "CHOICE",
                              "members": [
                                {
                                  "type": "SYMBOL",
                                  "name": "keyword_not"
                                },
                                {
                                  "type": "BLANK"
                                }
                              ]
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_distinct"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_foreign"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_key"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "_if_not_exists"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "keyword_index"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "FIELD",
              "name": "name",
              "content": {
                "type": "SYMBOL",
                "name": "identifier"
              }
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "ordered_columns"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_references"
                },
                {
                  "type": "SYMBOL",
                  "name": "object_reference"
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "STRING",
                      "value": "("
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "identifier"
                        },
                        {
                          "type": "REPEAT",
                          "content": {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": ","
                              },
                              {
                                "type": "SYMBOL",
                                "name": "identifier"
                              }
                            ]
                          }
                        }
                      ]
                    },
                    {
                      "type": "STRING",
                      "value": ")"
                    }
                  ]
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_on"
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_delete"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_update"
                          }
                        ]
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "SYMBOL",
                                "name": "keyword_no"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_action"
                              }
                            ]
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_restrict"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_cascade"
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "SYMBOL",
                                "name": "keyword_set"
                              },
                              {
                                "type": "CHOICE",
                                "members": [
                                  {
                                    "type": "SYMBOL",
                                    "name": "keyword_null"
                                  },
                                  {
                                    "type": "SYMBOL",
                                    "name": "keyword_default"
                                  }
                                ]
                              },
                              {
                                "type": "CHOICE",
                                "members": [
                                  {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "STRING",
                                        "value": "("
                                      },
                                      {
                                        "type": "SEQ",
                                        "members": [
                                          {
                                            "type": "SYMBOL",
                                            "name": "identifier"
                                          },
                                          {
                                            "type": "REPEAT",
                                            "content": {
                                              "type": "SEQ",
                                              "members": [
                                                {
                                                  "type": "STRING",
                                                  "value": ","
                                                },
                                                {
                                                  "type": "SYMBOL",
                                                  "name": "identifier"
                                                }
                                              ]
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "type": "STRING",
                                        "value": ")"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "BLANK"
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "ordered_columns": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "("
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "ordered_column"
              },
              "named": true,
              "value": "column"
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "ALIAS",
                    "content": {
                      "type": "SYMBOL",
                      "name": "ordered_column"
                    },
                    "named": true,
                    "value": "column"
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "STRING",
          "value": ")"
        }
      ]
    },
    "ordered_column": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "name",
          "content": {
            "type": "SYMBOL",
            "name": "_column"
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "direction"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "_expression": {
      "type": "PREC",
      "value": 1,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "literal"
          },
          {
            "type": "ALIAS",
            "content": {
              "type": "SYMBOL",
              "name": "_qualified_field"
            },
            "named": true,
            "value": "field"
          },
          {
            "type": "SYMBOL",
            "name": "parameter"
          },
          {
            "type": "SYMBOL",
            "name": "list"
          },
          {
            "type": "SYMBOL",
            "name": "case"
          },
          {
            "type": "SYMBOL",
            "name": "window_function"
          },
          {
            "type": "SYMBOL",
            "name": "subquery"
          },
          {
            "type": "SYMBOL",
            "name": "cast"
          },
          {
            "type": "ALIAS",
            "content": {
              "type": "SYMBOL",
              "name": "implicit_cast"
            },
            "named": true,
            "value": "cast"
          },
          {
            "type": "SYMBOL",
            "name": "exists"
          },
          {
            "type": "SYMBOL",
            "name": "invocation"
          },
          {
            "type": "SYMBOL",
            "name": "binary_expression"
          },
          {
            "type": "SYMBOL",
            "name": "subscript"
          },
          {
            "type": "SYMBOL",
            "name": "unary_expression"
          },
          {
            "type": "SYMBOL",
            "name": "array"
          },
          {
            "type": "SYMBOL",
            "name": "interval"
          },
          {
            "type": "SYMBOL",
            "name": "between_expression"
          },
          {
            "type": "SYMBOL",
            "name": "parenthesized_expression"
          },
          {
            "type": "SYMBOL",
            "name": "object_id"
          }
        ]
      }
    },
    "object_reference": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "FIELD",
              "name": "database",
              "content": {
                "type": "SYMBOL",
                "name": "identifier"
              }
            },
            {
              "type": "STRING",
              "value": "."
            },
            {
              "type": "FIELD",
              "name": "schema",
              "content": {
                "type": "SYMBOL",
                "name": "identifier"
              }
            },
            {
              "type": "STRING",
              "value": "."
            },
            {
              "type": "FIELD",
              "name": "name",
              "content": {
                "type": "SYMBOL",
                "name": "identifier"
              }
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "FIELD",
              "name": "schema",
              "content": {
                "type": "SYMBOL",
                "name": "identifier"
              }
            },
            {
              "type": "STRING",
              "value": "."
            },
            {
              "type": "FIELD",
              "name": "name",
              "content": {
                "type": "SYMBOL",
                "name": "identifier"
              }
            }
          ]
        },
        {
          "type": "FIELD",
          "name": "name",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        }
      ]
    },
    "field": {
      "type": "FIELD",
      "name": "name",
      "content": {
        "type": "SYMBOL",
        "name": "identifier"
      }
    },
    "_qualified_field": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "PREC_RIGHT",
                  "value": 0,
                  "content": {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "object_reference"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "SYMBOL",
                            "name": "object_reference"
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      }
                    ]
                  }
                },
                {
                  "type": "STRING",
                  "value": "."
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "FIELD",
          "name": "name",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        }
      ]
    },
    "parameter": {
      "type": "PATTERN",
      "value": "\\?|(\\$[0-9]+)"
    },
    "case": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_case"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "_expression"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_when"
                },
                {
                  "type": "SYMBOL",
                  "name": "_expression"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_then"
                },
                {
                  "type": "SYMBOL",
                  "name": "_expression"
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_when"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_expression"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_then"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_expression"
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_when"
                },
                {
                  "type": "SYMBOL",
                  "name": "_expression"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_then"
                },
                {
                  "type": "SYMBOL",
                  "name": "_expression"
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_when"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_expression"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_then"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_expression"
                      }
                    ]
                  }
                }
              ]
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_else"
                },
                {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_end"
        }
      ]
    },
    "implicit_cast": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "_expression"
        },
        {
          "type": "STRING",
          "value": "::"
        },
        {
          "type": "SYMBOL",
          "name": "_type"
        }
      ]
    },
    "cast": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "name",
          "content": {
            "type": "SYMBOL",
            "name": "keyword_cast"
          }
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "FIELD",
                  "name": "parameter",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_expression"
                  }
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_as"
                },
                {
                  "type": "SYMBOL",
                  "name": "_type"
                }
              ]
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "exists": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_exists"
        },
        {
          "type": "SYMBOL",
          "name": "subquery"
        }
      ]
    },
    "invocation": {
      "type": "PREC",
      "value": 1,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "object_reference"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "CHOICE",
                                "members": [
                                  {
                                    "type": "SYMBOL",
                                    "name": "keyword_distinct"
                                  },
                                  {
                                    "type": "BLANK"
                                  }
                                ]
                              },
                              {
                                "type": "FIELD",
                                "name": "parameter",
                                "content": {
                                  "type": "SYMBOL",
                                  "name": "term"
                                }
                              },
                              {
                                "type": "CHOICE",
                                "members": [
                                  {
                                    "type": "SYMBOL",
                                    "name": "order_by"
                                  },
                                  {
                                    "type": "BLANK"
                                  }
                                ]
                              }
                            ]
                          },
                          {
                            "type": "REPEAT",
                            "content": {
                              "type": "SEQ",
                              "members": [
                                {
                                  "type": "STRING",
                                  "value": ","
                                },
                                {
                                  "type": "SEQ",
                                  "members": [
                                    {
                                      "type": "CHOICE",
                                      "members": [
                                        {
                                          "type": "SYMBOL",
                                          "name": "keyword_distinct"
                                        },
                                        {
                                          "type": "BLANK"
                                        }
                                      ]
                                    },
                                    {
                                      "type": "FIELD",
                                      "name": "parameter",
                                      "content": {
                                        "type": "SYMBOL",
                                        "name": "term"
                                      }
                                    },
                                    {
                                      "type": "CHOICE",
                                      "members": [
                                        {
                                          "type": "SYMBOL",
                                          "name": "order_by"
                                        },
                                        {
                                          "type": "BLANK"
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "FIELD",
                                "name": "unit",
                                "content": {
                                  "type": "SYMBOL",
                                  "name": "object_reference"
                                }
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_from"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "term"
                              }
                            ]
                          },
                          {
                            "type": "REPEAT",
                            "content": {
                              "type": "SEQ",
                              "members": [
                                {
                                  "type": "STRING",
                                  "value": ","
                                },
                                {
                                  "type": "SEQ",
                                  "members": [
                                    {
                                      "type": "FIELD",
                                      "name": "unit",
                                      "content": {
                                        "type": "SYMBOL",
                                        "name": "object_reference"
                                      }
                                    },
                                    {
                                      "type": "SYMBOL",
                                      "name": "keyword_from"
                                    },
                                    {
                                      "type": "SYMBOL",
                                      "name": "term"
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_distinct"
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      },
                      {
                        "type": "FIELD",
                        "name": "parameter",
                        "content": {
                          "type": "SYMBOL",
                          "name": "term"
                        }
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "order_by"
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "CHOICE",
                                "members": [
                                  {
                                    "type": "SYMBOL",
                                    "name": "keyword_separator"
                                  },
                                  {
                                    "type": "STRING",
                                    "value": ","
                                  }
                                ]
                              },
                              {
                                "type": "ALIAS",
                                "content": {
                                  "type": "SYMBOL",
                                  "name": "_literal_string"
                                },
                                "named": true,
                                "value": "literal"
                              }
                            ]
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "limit"
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "filter_expression"
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "filter_expression": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_filter"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "SYMBOL",
              "name": "where"
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "parenthesized_expression": {
      "type": "PREC",
      "value": 2,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "STRING",
            "value": "("
          },
          {
            "type": "SYMBOL",
            "name": "_expression"
          },
          {
            "type": "STRING",
            "value": ")"
          }
        ]
      }
    },
    "subscript": {
      "type": "PREC_LEFT",
      "value": "binary_is",
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "FIELD",
            "name": "expression",
            "content": {
              "type": "SYMBOL",
              "name": "_expression"
            }
          },
          {
            "type": "STRING",
            "value": "["
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "FIELD",
                "name": "subscript",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "FIELD",
                    "name": "lower",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_expression"
                    }
                  },
                  {
                    "type": "STRING",
                    "value": ":"
                  },
                  {
                    "type": "FIELD",
                    "name": "upper",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_expression"
                    }
                  }
                ]
              }
            ]
          },
          {
            "type": "STRING",
            "value": "]"
          }
        ]
      }
    },
    "op_other": {
      "type": "TOKEN",
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "STRING",
            "value": "->"
          },
          {
            "type": "STRING",
            "value": "->>"
          },
          {
            "type": "STRING",
            "value": "#>"
          },
          {
            "type": "STRING",
            "value": "#>>"
          },
          {
            "type": "STRING",
            "value": "~"
          },
          {
            "type": "STRING",
            "value": "!~"
          },
          {
            "type": "STRING",
            "value": "~*"
          },
          {
            "type": "STRING",
            "value": "!~*"
          },
          {
            "type": "STRING",
            "value": "|"
          },
          {
            "type": "STRING",
            "value": "&"
          },
          {
            "type": "STRING",
            "value": "#"
          },
          {
            "type": "STRING",
            "value": "<<"
          },
          {
            "type": "STRING",
            "value": ">>"
          },
          {
            "type": "STRING",
            "value": "<<="
          },
          {
            "type": "STRING",
            "value": ">>="
          },
          {
            "type": "STRING",
            "value": "##"
          },
          {
            "type": "STRING",
            "value": "<->"
          },
          {
            "type": "STRING",
            "value": "@>"
          },
          {
            "type": "STRING",
            "value": "<@"
          },
          {
            "type": "STRING",
            "value": "&<"
          },
          {
            "type": "STRING",
            "value": "&>"
          },
          {
            "type": "STRING",
            "value": "|>>"
          },
          {
            "type": "STRING",
            "value": "<<|"
          },
          {
            "type": "STRING",
            "value": "&<|"
          },
          {
            "type": "STRING",
            "value": "|&>"
          },
          {
            "type": "STRING",
            "value": "<^"
          },
          {
            "type": "STRING",
            "value": "^>"
          },
          {
            "type": "STRING",
            "value": "?#"
          },
          {
            "type": "STRING",
            "value": "?-"
          },
          {
            "type": "STRING",
            "value": "?|"
          },
          {
            "type": "STRING",
            "value": "?-|"
          },
          {
            "type": "STRING",
            "value": "?||"
          },
          {
            "type": "STRING",
            "value": "@@"
          },
          {
            "type": "STRING",
            "value": "@@@"
          },
          {
            "type": "STRING",
            "value": "@?"
          },
          {
            "type": "STRING",
            "value": "#-"
          },
          {
            "type": "STRING",
            "value": "?&"
          },
          {
            "type": "STRING",
            "value": "?"
          },
          {
            "type": "STRING",
            "value": "-|-"
          },
          {
            "type": "STRING",
            "value": "||"
          },
          {
            "type": "STRING",
            "value": "^@"
          }
        ]
      }
    },
    "binary_expression": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PREC_LEFT",
          "value": "binary_plus",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": "+"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_plus",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": "-"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_times",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": "*"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_times",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": "/"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_times",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": "%"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_exp",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": "^"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_relation",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": "="
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_relation",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": "<"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_relation",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": "<="
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_relation",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": "!="
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_relation",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": ">="
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_relation",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": ">"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_relation",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "STRING",
                  "value": "<>"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_other",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "op_other"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_is",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "keyword_is"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_is",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "is_not"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "pattern_matching",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "keyword_like"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "pattern_matching",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "not_like"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "pattern_matching",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "keyword_rlike"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "pattern_matching",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "not_rlike"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "pattern_matching",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "similar_to"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "pattern_matching",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "not_similar_to"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_is",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "distinct_from"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_is",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "not_distinct_from"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "clause_connective",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "keyword_and"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "clause_disjunctive",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "keyword_or"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_in",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "keyword_in"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "list"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "subquery"
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "binary_in",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "not_in"
                }
              },
              {
                "type": "FIELD",
                "name": "right",
                "content": {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "list"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "subquery"
                    }
                  ]
                }
              }
            ]
          }
        }
      ]
    },
    "op_unary_other": {
      "type": "TOKEN",
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "STRING",
            "value": "|/"
          },
          {
            "type": "STRING",
            "value": "||/"
          },
          {
            "type": "STRING",
            "value": "@"
          },
          {
            "type": "STRING",
            "value": "~"
          },
          {
            "type": "STRING",
            "value": "@-@"
          },
          {
            "type": "STRING",
            "value": "@@"
          },
          {
            "type": "STRING",
            "value": "#"
          },
          {
            "type": "STRING",
            "value": "?-"
          },
          {
            "type": "STRING",
            "value": "?|"
          },
          {
            "type": "STRING",
            "value": "!!"
          }
        ]
      }
    },
    "unary_expression": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PREC_LEFT",
          "value": "unary_not",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "keyword_not"
                }
              },
              {
                "type": "FIELD",
                "name": "operand",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "unary_not",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "bang"
                }
              },
              {
                "type": "FIELD",
                "name": "operand",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "unary_not",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "keyword_any"
                }
              },
              {
                "type": "FIELD",
                "name": "operand",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "unary_not",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "keyword_some"
                }
              },
              {
                "type": "FIELD",
                "name": "operand",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "unary_not",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "keyword_all"
                }
              },
              {
                "type": "FIELD",
                "name": "operand",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "unary_other",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "op_unary_other"
                }
              },
              {
                "type": "FIELD",
                "name": "operand",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        }
      ]
    },
    "interval": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_interval"
        },
        {
          "type": "SYMBOL",
          "name": "_literal_string"
        }
      ]
    },
    "between_expression": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PREC_LEFT",
          "value": "between",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SYMBOL",
                  "name": "keyword_between"
                }
              },
              {
                "type": "FIELD",
                "name": "low",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "SYMBOL",
                "name": "keyword_and"
              },
              {
                "type": "FIELD",
                "name": "high",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        },
        {
          "type": "PREC_LEFT",
          "value": "between",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "left",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "FIELD",
                "name": "operator",
                "content": {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_not"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_between"
                    }
                  ]
                }
              },
              {
                "type": "FIELD",
                "name": "low",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "SYMBOL",
                "name": "keyword_and"
              },
              {
                "type": "FIELD",
                "name": "high",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              }
            ]
          }
        }
      ]
    },
    "not_in": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_not"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_in"
        }
      ]
    },
    "subquery": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "("
        },
        {
          "type": "SYMBOL",
          "name": "_dml_read"
        },
        {
          "type": "STRING",
          "value": ")"
        }
      ]
    },
    "list": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "("
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "_expression"
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": ","
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_expression"
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "STRING",
          "value": ")"
        }
      ]
    },
    "literal": {
      "type": "PREC",
      "value": 2,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "_integer"
          },
          {
            "type": "SYMBOL",
            "name": "_decimal_number"
          },
          {
            "type": "SYMBOL",
            "name": "_literal_string"
          },
          {
            "type": "SYMBOL",
            "name": "_bit_string"
          },
          {
            "type": "SYMBOL",
            "name": "_string_casting"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_true"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_false"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_null"
          }
        ]
      }
    },
    "_double_quote_string": {
      "type": "PATTERN",
      "value": "\"[^\"]*\""
    },
    "_backtick_quoted_string": {
      "type": "PATTERN",
      "value": "`[^`]*`"
    },
    "_single_quote_string": {
      "type": "SEQ",
      "members": [
        {
          "type": "PATTERN",
          "value": "([uU]&|[nN])?'([^']|'')*'"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "PATTERN",
            "value": "'([^']|'')*'"
          }
        }
      ]
    },
    "_postgres_escape_string": {
      "type": "PATTERN",
      "value": "(e|E)'([^']|\\\\')*'"
    },
    "_literal_string": {
      "type": "PREC",
      "value": 1,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "_single_quote_string"
          },
          {
            "type": "SYMBOL",
            "name": "_double_quote_string"
          },
          {
            "type": "SYMBOL",
            "name": "_dollar_quoted_string"
          },
          {
            "type": "SYMBOL",
            "name": "_postgres_escape_string"
          }
        ]
      }
    },
    "_natural_number": {
      "type": "PATTERN",
      "value": "\\d+"
    },
    "_integer": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "STRING",
                  "value": "-"
                },
                {
                  "type": "STRING",
                  "value": "+"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "PATTERN",
          "value": "(0[xX][0-9A-Fa-f]+(_[0-9A-Fa-f]+)*)|(0[oO][0-7]+(_[0-7]+)*)|(0[bB][01]+(_[01]+)*)|(\\d+(_\\d+)*(e[+-]?\\d+(_\\d+)*)?)"
        }
      ]
    },
    "_decimal_number": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "STRING",
                  "value": "-"
                },
                {
                  "type": "STRING",
                  "value": "+"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "PATTERN",
          "value": "((\\d+(_\\d+)*)?[.]\\d+(_\\d+)*(e[+-]?\\d+(_\\d+)*)?)|(\\d+(_\\d+)*[.](e[+-]?\\d+(_\\d+)*)?)"
        }
      ]
    },
    "_bit_string": {
      "type": "SEQ",
      "members": [
        {
          "type": "PATTERN",
          "value": "[bBxX]'([^']|'')*'"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "PATTERN",
            "value": "'([^']|'')*'"
          }
        }
      ]
    },
    "_string_casting": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "SYMBOL",
          "name": "_single_quote_string"
        }
      ]
    },
    "bang": {
      "type": "STRING",
      "value": "!"
    },
    "identifier": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "_identifier"
        },
        {
          "type": "SYMBOL",
          "name": "_double_quote_string"
        },
        {
          "type": "SYMBOL",
          "name": "_backtick_quoted_string"
        },
        {
          "type": "SYMBOL",
          "name": "_tsql_parameter"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "`"
            },
            {
              "type": "SYMBOL",
              "name": "_identifier"
            },
            {
              "type": "STRING",
              "value": "`"
            }
          ]
        }
      ]
    },
    "_tsql_parameter": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "@"
        },
        {
          "type": "SYMBOL",
          "name": "_identifier"
        }
      ]
    },
    "_identifier": {
      "type": "PATTERN",
      "value": "[A-Za-z_\\u00C0-\\u017F][0-9A-Za-z_\\u00C0-\\u017F]*"
    },
    "object_id": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_object_id"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_literal_string"
                  },
                  "named": true,
                  "value": "literal"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "STRING",
                          "value": ","
                        },
                        {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_literal_string"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "transaction": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_begin"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_transaction"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "STRING",
              "value": ";"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "statement"
              },
              {
                "type": "STRING",
                "value": ";"
              }
            ]
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_commit"
            },
            {
              "type": "SYMBOL",
              "name": "_rollback"
            }
          ]
        }
      ]
    },
    "_commit": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_commit"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_transaction"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "_rollback": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_rollback"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_transaction"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "block": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_begin"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "STRING",
              "value": ";"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "statement"
              },
              {
                "type": "STRING",
                "value": ";"
              }
            ]
          }
        },
        {
          "type": "SYMBOL",
          "name": "keyword_end"
        }
      ]
    },
    "statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_explain"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_analyze"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_verbose"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_ddl_statement"
            },
            {
              "type": "SYMBOL",
              "name": "_dml_write"
            },
            {
              "type": "PREC_RIGHT",
              "value": 0,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_dml_read"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": "("
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_dml_read"
                      },
                      {
                        "type": "STRING",
                        "value": ")"
                      }
                    ]
                  }
                ]
              }
            },
            {
              "type": "SYMBOL",
              "name": "while_statement"
            }
          ]
        }
      ]
    },
    "while_statement": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_while"
          },
          {
            "type": "PREC_RIGHT",
            "value": 0,
            "content": {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "_expression"
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "STRING",
                      "value": "("
                    },
                    {
                      "type": "SYMBOL",
                      "name": "_expression"
                    },
                    {
                      "type": "STRING",
                      "value": ")"
                    }
                  ]
                }
              ]
            }
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "statement"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "STRING",
                        "value": ";"
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_begin"
                  },
                  {
                    "type": "REPEAT",
                    "content": {
                      "type": "SYMBOL",
                      "name": "statement"
                    }
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_end"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "var_declarations": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_declare"
        },
        {
          "type": "REPEAT1",
          "content": {
            "type": "SYMBOL",
            "name": "var_declaration"
          }
        }
      ]
    },
    "var_declaration": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "SYMBOL",
          "name": "_type"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_default"
                    },
                    {
                      "type": "STRING",
                      "value": "="
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "literal"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "STRING",
              "value": ","
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "_ddl_statement": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "_create_statement"
        },
        {
          "type": "SYMBOL",
          "name": "_alter_statement"
        },
        {
          "type": "SYMBOL",
          "name": "_drop_statement"
        },
        {
          "type": "SYMBOL",
          "name": "_rename_statement"
        },
        {
          "type": "SYMBOL",
          "name": "_optimize_statement"
        },
        {
          "type": "SYMBOL",
          "name": "_merge_statement"
        },
        {
          "type": "SYMBOL",
          "name": "_refresh_statement"
        },
        {
          "type": "SYMBOL",
          "name": "comment_statement"
        },
        {
          "type": "SYMBOL",
          "name": "set_statement"
        },
        {
          "type": "SYMBOL",
          "name": "reset_statement"
        }
      ]
    },
    "_create_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "create_table"
            },
            {
              "type": "SYMBOL",
              "name": "create_view"
            },
            {
              "type": "SYMBOL",
              "name": "create_materialized_view"
            },
            {
              "type": "SYMBOL",
              "name": "create_index"
            },
            {
              "type": "SYMBOL",
              "name": "create_function"
            },
            {
              "type": "SYMBOL",
              "name": "create_procedure"
            },
            {
              "type": "SYMBOL",
              "name": "create_type"
            },
            {
              "type": "SYMBOL",
              "name": "create_database"
            },
            {
              "type": "SYMBOL",
              "name": "create_role"
            },
            {
              "type": "SYMBOL",
              "name": "create_sequence"
            },
            {
              "type": "SYMBOL",
              "name": "create_extension"
            },
            {
              "type": "SYMBOL",
              "name": "create_trigger"
            },
            {
              "type": "SYMBOL",
              "name": "create_policy"
            },
            {
              "type": "PREC_LEFT",
              "value": 0,
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "create_schema"
                  },
                  {
                    "type": "REPEAT",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_create_statement"
                    }
                  }
                ]
              }
            }
          ]
        }
      ]
    },
    "create_table": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_create"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_temporary"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_unlogged"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_external"
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "keyword_table"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_if_not_exists"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "object_reference"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "column_definitions"
                  },
                  {
                    "type": "REPEAT",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_table_settings"
                    }
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_as"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "_select_statement"
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "REPEAT",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_table_settings"
                    }
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_as"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "create_query"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "_table_settings": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "table_partition"
        },
        {
          "type": "SYMBOL",
          "name": "stored_as"
        },
        {
          "type": "SYMBOL",
          "name": "storage_location"
        },
        {
          "type": "SYMBOL",
          "name": "table_sort"
        },
        {
          "type": "SYMBOL",
          "name": "row_format"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_tblproperties"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "STRING",
                  "value": "("
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "table_option"
                    },
                    {
                      "type": "REPEAT",
                      "content": {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": ","
                          },
                          {
                            "type": "SYMBOL",
                            "name": "table_option"
                          }
                        ]
                      }
                    }
                  ]
                },
                {
                  "type": "STRING",
                  "value": ")"
                }
              ]
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_without"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_oids"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "storage_parameters"
        },
        {
          "type": "SYMBOL",
          "name": "table_option"
        }
      ]
    },
    "stored_as": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_stored"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_as"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_parquet"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_csv"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_sequencefile"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_textfile"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_rcfile"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_orc"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_avro"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_jsonfile"
            }
          ]
        }
      ]
    },
    "storage_parameters": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_with"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "identifier"
                    },
                    {
                      "type": "CHOICE",
                      "members": [
                        {
                          "type": "SEQ",
                          "members": [
                            {
                              "type": "STRING",
                              "value": "="
                            },
                            {
                              "type": "CHOICE",
                              "members": [
                                {
                                  "type": "SYMBOL",
                                  "name": "literal"
                                },
                                {
                                  "type": "SYMBOL",
                                  "name": "array"
                                }
                              ]
                            }
                          ]
                        },
                        {
                          "type": "BLANK"
                        }
                      ]
                    }
                  ]
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": ","
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "identifier"
                          },
                          {
                            "type": "CHOICE",
                            "members": [
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "STRING",
                                    "value": "="
                                  },
                                  {
                                    "type": "CHOICE",
                                    "members": [
                                      {
                                        "type": "SYMBOL",
                                        "name": "literal"
                                      },
                                      {
                                        "type": "SYMBOL",
                                        "name": "array"
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "BLANK"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "storage_location": {
      "type": "PREC_RIGHT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_location"
          },
          {
            "type": "FIELD",
            "name": "path",
            "content": {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_literal_string"
              },
              "named": true,
              "value": "literal"
            }
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_cached"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_in"
                  },
                  {
                    "type": "FIELD",
                    "name": "pool",
                    "content": {
                      "type": "ALIAS",
                      "content": {
                        "type": "SYMBOL",
                        "name": "_literal_string"
                      },
                      "named": true,
                      "value": "literal"
                    }
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_uncached"
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "SYMBOL",
                                "name": "keyword_with"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_replication"
                              },
                              {
                                "type": "STRING",
                                "value": "="
                              },
                              {
                                "type": "FIELD",
                                "name": "value",
                                "content": {
                                  "type": "ALIAS",
                                  "content": {
                                    "type": "SYMBOL",
                                    "name": "_natural_number"
                                  },
                                  "named": true,
                                  "value": "literal"
                                }
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "row_format": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_row"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_format"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_delimited"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_fields"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_terminated"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_by"
                },
                {
                  "type": "FIELD",
                  "name": "fields_terminated_char",
                  "content": {
                    "type": "ALIAS",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_literal_string"
                    },
                    "named": true,
                    "value": "literal"
                  }
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_escaped"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_by"
                        },
                        {
                          "type": "FIELD",
                          "name": "escaped_char",
                          "content": {
                            "type": "ALIAS",
                            "content": {
                              "type": "SYMBOL",
                              "name": "_literal_string"
                            },
                            "named": true,
                            "value": "literal"
                          }
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_lines"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_terminated"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_by"
                },
                {
                  "type": "FIELD",
                  "name": "row_terminated_char",
                  "content": {
                    "type": "ALIAS",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_literal_string"
                    },
                    "named": true,
                    "value": "literal"
                  }
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "table_sort": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_sort"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_by"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "identifier"
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": ","
                      },
                      {
                        "type": "SYMBOL",
                        "name": "identifier"
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "table_partition": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_partition"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_by"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_range"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_hash"
                    }
                  ]
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_partitioned"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_by"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "keyword_partition"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "STRING",
                  "value": "("
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "identifier"
                        },
                        {
                          "type": "REPEAT",
                          "content": {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": ","
                              },
                              {
                                "type": "SYMBOL",
                                "name": "identifier"
                              }
                            ]
                          }
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "STRING",
                  "value": ")"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "column_definitions"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "STRING",
                  "value": "("
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "_key_value_pair"
                    },
                    {
                      "type": "REPEAT",
                      "content": {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": ","
                          },
                          {
                            "type": "SYMBOL",
                            "name": "_key_value_pair"
                          }
                        ]
                      }
                    }
                  ]
                },
                {
                  "type": "STRING",
                  "value": ")"
                }
              ]
            }
          ]
        }
      ]
    },
    "table_option": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_default"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_character"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_set"
            },
            {
              "type": "SYMBOL",
              "name": "identifier"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_collate"
            },
            {
              "type": "SYMBOL",
              "name": "identifier"
            }
          ]
        },
        {
          "type": "FIELD",
          "name": "name",
          "content": {
            "type": "SYMBOL",
            "name": "keyword_default"
          }
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "FIELD",
              "name": "name",
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_engine"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "identifier"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_literal_string"
                  }
                ]
              }
            },
            {
              "type": "STRING",
              "value": "="
            },
            {
              "type": "FIELD",
              "name": "value",
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "identifier"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_literal_string"
                  }
                ]
              }
            }
          ]
        }
      ]
    },
    "create_query": {
      "type": "SYMBOL",
      "name": "_dml_read"
    },
    "create_view": {
      "type": "PREC_RIGHT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_create"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_or_replace"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_temporary"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_recursive"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "keyword_view"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_if_not_exists"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "object_reference"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "identifier"
                          },
                          {
                            "type": "REPEAT",
                            "content": {
                              "type": "SEQ",
                              "members": [
                                {
                                  "type": "STRING",
                                  "value": ","
                                },
                                {
                                  "type": "SYMBOL",
                                  "name": "identifier"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "keyword_as"
          },
          {
            "type": "SYMBOL",
            "name": "create_query"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_with"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_local"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_cascaded"
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_check_option"
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "create_materialized_view": {
      "type": "PREC_RIGHT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_create"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_or_replace"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "keyword_materialized"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_view"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_if_not_exists"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "object_reference"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_as"
          },
          {
            "type": "SYMBOL",
            "name": "create_query"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_with"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_data"
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_with"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_no"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_data"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "_operator_class": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "opclass",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "FIELD",
              "name": "opclass_parameters",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "term"
                          },
                          {
                            "type": "REPEAT",
                            "content": {
                              "type": "SEQ",
                              "members": [
                                {
                                  "type": "STRING",
                                  "value": ","
                                },
                                {
                                  "type": "SYMBOL",
                                  "name": "term"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "composite_field": {
      "type": "SEQ",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_index_field"
                  },
                  "named": true,
                  "value": "field"
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": ","
                      },
                      {
                        "type": "ALIAS",
                        "content": {
                          "type": "SYMBOL",
                          "name": "_index_field"
                        },
                        "named": true,
                        "value": "field"
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_hash"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "_index_field": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "FIELD",
              "name": "expression",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_expression"
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            },
            {
              "type": "FIELD",
              "name": "function",
              "content": {
                "type": "SYMBOL",
                "name": "invocation"
              }
            },
            {
              "type": "FIELD",
              "name": "column",
              "content": {
                "type": "SYMBOL",
                "name": "_column"
              }
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_collate"
                },
                {
                  "type": "SYMBOL",
                  "name": "identifier"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_operator_class"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_hash"
                },
                {
                  "type": "SYMBOL",
                  "name": "direction"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_nulls"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_first"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_last"
                    }
                  ]
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "index_fields": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "("
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "composite_field"
                },
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_index_field"
                  },
                  "named": true,
                  "value": "field"
                }
              ]
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "composite_field"
                      },
                      {
                        "type": "ALIAS",
                        "content": {
                          "type": "SYMBOL",
                          "name": "_index_field"
                        },
                        "named": true,
                        "value": "field"
                      }
                    ]
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "STRING",
          "value": ")"
        }
      ]
    },
    "tablespace": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_tablespace"
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        }
      ]
    },
    "tablet_split": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_split"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_into"
        },
        {
          "type": "SYMBOL",
          "name": "_natural_number"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_tablets"
        }
      ]
    },
    "covering_columns": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_include"
        },
        {
          "type": "SYMBOL",
          "name": "index_fields"
        }
      ]
    },
    "create_index": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_create"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_unique"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_index"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_concurrently"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "_if_not_exists"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "FIELD",
                  "name": "column",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_column"
                  }
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_on"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_only"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "object_reference"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_using"
                    },
                    {
                      "type": "CHOICE",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_btree"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_hash"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_gist"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_spgist"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_gin"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_brin"
                        }
                      ]
                    }
                  ]
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "index_fields"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "covering_columns"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "tablespace"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "tablet_split"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "where"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "dollar_quote": {
      "type": "PATTERN",
      "value": "\\$[^\\$]*\\$"
    },
    "create_function": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_create"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_or_replace"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_function"
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "SYMBOL",
          "name": "function_arguments"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_returns"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_type"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_setof"
                },
                {
                  "type": "SYMBOL",
                  "name": "_type"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_table"
                },
                {
                  "type": "SYMBOL",
                  "name": "column_definitions"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "keyword_trigger"
            }
          ]
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "function_language"
              },
              {
                "type": "SYMBOL",
                "name": "function_volatility"
              },
              {
                "type": "SYMBOL",
                "name": "function_leakproof"
              },
              {
                "type": "SYMBOL",
                "name": "function_security"
              },
              {
                "type": "SYMBOL",
                "name": "function_safety"
              },
              {
                "type": "SYMBOL",
                "name": "function_strictness"
              },
              {
                "type": "SYMBOL",
                "name": "function_cost"
              },
              {
                "type": "SYMBOL",
                "name": "function_rows"
              },
              {
                "type": "SYMBOL",
                "name": "function_support"
              }
            ]
          }
        },
        {
          "type": "SYMBOL",
          "name": "function_body"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "function_language"
              },
              {
                "type": "SYMBOL",
                "name": "function_volatility"
              },
              {
                "type": "SYMBOL",
                "name": "function_leakproof"
              },
              {
                "type": "SYMBOL",
                "name": "function_security"
              },
              {
                "type": "SYMBOL",
                "name": "function_safety"
              },
              {
                "type": "SYMBOL",
                "name": "function_strictness"
              },
              {
                "type": "SYMBOL",
                "name": "function_cost"
              },
              {
                "type": "SYMBOL",
                "name": "function_rows"
              },
              {
                "type": "SYMBOL",
                "name": "function_support"
              }
            ]
          }
        }
      ]
    },
    "_argmode": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_in"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_out"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_inout"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_variadic"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_in"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_out"
            }
          ]
        }
      ]
    },
    "function_argument": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_argmode"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "identifier"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "_type"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_default"
                    },
                    {
                      "type": "STRING",
                      "value": "="
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "literal"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "function_arguments": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "("
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "function_argument"
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": ","
                      },
                      {
                        "type": "SYMBOL",
                        "name": "function_argument"
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "STRING",
          "value": ")"
        }
      ]
    },
    "_function_return": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_return"
        },
        {
          "type": "SYMBOL",
          "name": "_expression"
        }
      ]
    },
    "function_declaration": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "SYMBOL",
          "name": "_type"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "STRING",
                  "value": ":="
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "STRING",
                          "value": "("
                        },
                        {
                          "type": "SYMBOL",
                          "name": "statement"
                        },
                        {
                          "type": "STRING",
                          "value": ")"
                        }
                      ]
                    },
                    {
                      "type": "SYMBOL",
                      "name": "literal"
                    }
                  ]
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "STRING",
          "value": ";"
        }
      ]
    },
    "_function_body_statement": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "statement"
        },
        {
          "type": "SYMBOL",
          "name": "_function_return"
        }
      ]
    },
    "_tsql_function_body_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_as"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_begin"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "var_declarations"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "REPEAT",
              "content": {
                "type": "SYMBOL",
                "name": "statement"
              }
            },
            {
              "type": "REPEAT1",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_begin"
                  },
                  {
                    "type": "REPEAT",
                    "content": {
                      "type": "SYMBOL",
                      "name": "statement"
                    }
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_end"
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "_function_return"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_end"
        }
      ]
    },
    "function_body": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_function_return"
            },
            {
              "type": "STRING",
              "value": ";"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_begin"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_atomic"
            },
            {
              "type": "REPEAT1",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_function_body_statement"
                  },
                  {
                    "type": "STRING",
                    "value": ";"
                  }
                ]
              }
            },
            {
              "type": "SYMBOL",
              "name": "keyword_end"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_as"
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_dollar_quoted_string_start_tag"
              },
              "named": true,
              "value": "dollar_quote"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_declare"
                    },
                    {
                      "type": "REPEAT1",
                      "content": {
                        "type": "SYMBOL",
                        "name": "function_declaration"
                      }
                    }
                  ]
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "keyword_begin"
            },
            {
              "type": "REPEAT1",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_function_body_statement"
                  },
                  {
                    "type": "STRING",
                    "value": ";"
                  }
                ]
              }
            },
            {
              "type": "SYMBOL",
              "name": "keyword_end"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "STRING",
                  "value": ";"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_dollar_quoted_string_end_tag"
              },
              "named": true,
              "value": "dollar_quote"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_as"
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_single_quote_string"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_double_quote_string"
                  }
                ]
              },
              "named": true,
              "value": "literal"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_as"
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_dollar_quoted_string_start_tag"
              },
              "named": true,
              "value": "dollar_quote"
            },
            {
              "type": "SYMBOL",
              "name": "_function_body_statement"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "STRING",
                  "value": ";"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_dollar_quoted_string_end_tag"
              },
              "named": true,
              "value": "dollar_quote"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "_tsql_function_body_statement"
        }
      ]
    },
    "function_language": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_language"
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        }
      ]
    },
    "function_volatility": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_immutable"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_stable"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_volatile"
        }
      ]
    },
    "function_leakproof": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_not"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_leakproof"
        }
      ]
    },
    "function_security": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_external"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_security"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_invoker"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_definer"
            }
          ]
        }
      ]
    },
    "function_safety": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_parallel"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_safe"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_unsafe"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_restricted"
            }
          ]
        }
      ]
    },
    "function_strictness": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_called"
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_returns"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_null"
                    }
                  ]
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "keyword_on"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_null"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_input"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_strict"
        }
      ]
    },
    "function_cost": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_cost"
        },
        {
          "type": "SYMBOL",
          "name": "_natural_number"
        }
      ]
    },
    "function_rows": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_rows"
        },
        {
          "type": "SYMBOL",
          "name": "_natural_number"
        }
      ]
    },
    "function_support": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_support"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_literal_string"
          },
          "named": true,
          "value": "literal"
        }
      ]
    },
    "create_procedure": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_create"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_or_replace"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_definer"
                },
                {
                  "type": "STRING",
                  "value": "="
                },
                {
                  "type": "SYMBOL",
                  "name": "identifier"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_procedure"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_not_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "function_arguments"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "function_language"
              },
              {
                "type": "SYMBOL",
                "name": "function_security"
              },
              {
                "type": "SYMBOL",
                "name": "function_safety"
              }
            ]
          }
        },
        {
          "type": "SYMBOL",
          "name": "procedure_body"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "function_language"
              },
              {
                "type": "SYMBOL",
                "name": "function_security"
              },
              {
                "type": "SYMBOL",
                "name": "function_safety"
              }
            ]
          }
        }
      ]
    },
    "procedure_body": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_begin"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_atomic"
            },
            {
              "type": "REPEAT1",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_function_body_statement"
                  },
                  {
                    "type": "STRING",
                    "value": ";"
                  }
                ]
              }
            },
            {
              "type": "SYMBOL",
              "name": "keyword_end"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_as"
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_dollar_quoted_string_start_tag"
              },
              "named": true,
              "value": "dollar_quote"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_declare"
                    },
                    {
                      "type": "REPEAT1",
                      "content": {
                        "type": "SYMBOL",
                        "name": "function_declaration"
                      }
                    }
                  ]
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "keyword_begin"
            },
            {
              "type": "REPEAT1",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_function_body_statement"
                  },
                  {
                    "type": "STRING",
                    "value": ";"
                  }
                ]
              }
            },
            {
              "type": "SYMBOL",
              "name": "keyword_end"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "STRING",
                  "value": ";"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_dollar_quoted_string_end_tag"
              },
              "named": true,
              "value": "dollar_quote"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_as"
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_single_quote_string"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_double_quote_string"
                  }
                ]
              },
              "named": true,
              "value": "literal"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_as"
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_dollar_quoted_string_start_tag"
              },
              "named": true,
              "value": "dollar_quote"
            },
            {
              "type": "SYMBOL",
              "name": "_function_body_statement"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "STRING",
                  "value": ";"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_dollar_quoted_string_end_tag"
              },
              "named": true,
              "value": "dollar_quote"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "_tsql_procedure_body_statement"
        }
      ]
    },
    "_tsql_procedure_body_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_as"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_begin"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "var_declarations"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "REPEAT",
              "content": {
                "type": "SYMBOL",
                "name": "statement"
              }
            },
            {
              "type": "REPEAT1",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_begin"
                  },
                  {
                    "type": "REPEAT",
                    "content": {
                      "type": "SYMBOL",
                      "name": "statement"
                    }
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_end"
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_end"
        }
      ]
    },
    "create_schema": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_create"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_schema"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "_if_not_exists"
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "SYMBOL",
                    "name": "identifier"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_authorization"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "identifier"
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_authorization"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "identifier"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "_with_settings": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "name",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "STRING",
              "value": "="
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "identifier"
              },
              {
                "type": "ALIAS",
                "content": {
                  "type": "SYMBOL",
                  "name": "_single_quote_string"
                },
                "named": true,
                "value": "literal"
              }
            ]
          }
        }
      ]
    },
    "create_database": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_create"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_database"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_if_not_exists"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "identifier"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_with"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "REPEAT",
            "content": {
              "type": "SYMBOL",
              "name": "_with_settings"
            }
          }
        ]
      }
    },
    "create_role": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_create"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_user"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_role"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_group"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "identifier"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_with"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "REPEAT",
            "content": {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "_user_access_role_config"
                },
                {
                  "type": "SYMBOL",
                  "name": "_role_options"
                }
              ]
            }
          }
        ]
      }
    },
    "_role_options": {
      "type": "CHOICE",
      "members": [
        {
          "type": "FIELD",
          "name": "option",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_valid"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_until"
            },
            {
              "type": "FIELD",
              "name": "valid_until",
              "content": {
                "type": "ALIAS",
                "content": {
                  "type": "SYMBOL",
                  "name": "_literal_string"
                },
                "named": true,
                "value": "literal"
              }
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_connection"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_limit"
            },
            {
              "type": "FIELD",
              "name": "connection_limit",
              "content": {
                "type": "ALIAS",
                "content": {
                  "type": "SYMBOL",
                  "name": "_integer"
                },
                "named": true,
                "value": "literal"
              }
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_encrypted"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "keyword_password"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "FIELD",
                  "name": "password",
                  "content": {
                    "type": "ALIAS",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_literal_string"
                    },
                    "named": true,
                    "value": "literal"
                  }
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_null"
                }
              ]
            }
          ]
        }
      ]
    },
    "_user_access_role_config": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_in"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_role"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_in"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_group"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "keyword_admin"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_user"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "identifier"
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "SYMBOL",
                    "name": "identifier"
                  }
                ]
              }
            }
          ]
        }
      ]
    },
    "create_sequence": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_create"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_temporary"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_temp"
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_unlogged"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_sequence"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_not_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_as"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_type"
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_increment"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_by"
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "FIELD",
                    "name": "increment",
                    "content": {
                      "type": "ALIAS",
                      "content": {
                        "type": "SYMBOL",
                        "name": "_integer"
                      },
                      "named": true,
                      "value": "literal"
                    }
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_minvalue"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "literal"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_no"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_minvalue"
                          }
                        ]
                      }
                    ]
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_no"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_minvalue"
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_maxvalue"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "literal"
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_no"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_maxvalue"
                          }
                        ]
                      }
                    ]
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_no"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_maxvalue"
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_start"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_with"
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "FIELD",
                    "name": "start",
                    "content": {
                      "type": "ALIAS",
                      "content": {
                        "type": "SYMBOL",
                        "name": "_integer"
                      },
                      "named": true,
                      "value": "literal"
                    }
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_cache"
                  },
                  {
                    "type": "FIELD",
                    "name": "cache",
                    "content": {
                      "type": "ALIAS",
                      "content": {
                        "type": "SYMBOL",
                        "name": "_integer"
                      },
                      "named": true,
                      "value": "literal"
                    }
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_no"
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_cycle"
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_owned"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_by"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_none"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "object_reference"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        }
      ]
    },
    "create_extension": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_create"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_extension"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_if_not_exists"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "identifier"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_with"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_schema"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "identifier"
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_version"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "identifier"
                      },
                      {
                        "type": "ALIAS",
                        "content": {
                          "type": "SYMBOL",
                          "name": "_literal_string"
                        },
                        "named": true,
                        "value": "literal"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_cascade"
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "create_trigger": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_create"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_or_replace"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_definer"
                },
                {
                  "type": "STRING",
                  "value": "="
                },
                {
                  "type": "SYMBOL",
                  "name": "identifier"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_constraint"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_temporary"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_trigger"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_not_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_before"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_after"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_instead"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_of"
                }
              ]
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "_create_trigger_event"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_or"
              },
              {
                "type": "SYMBOL",
                "name": "_create_trigger_event"
              }
            ]
          }
        },
        {
          "type": "SYMBOL",
          "name": "keyword_on"
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_from"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "object_reference"
                  }
                ]
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_not"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_deferrable"
                      }
                    ]
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_deferrable"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_initially"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_immediate"
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_initially"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_deferred"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_referencing"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_old"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_new"
                      }
                    ]
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_table"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_as"
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "SYMBOL",
                    "name": "identifier"
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_for"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_each"
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_row"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_statement"
                      }
                    ]
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "CHOICE",
                            "members": [
                              {
                                "type": "SYMBOL",
                                "name": "keyword_follows"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_precedes"
                              }
                            ]
                          },
                          {
                            "type": "SYMBOL",
                            "name": "identifier"
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_when"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": "("
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_expression"
                      },
                      {
                        "type": "STRING",
                        "value": ")"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        },
        {
          "type": "SYMBOL",
          "name": "keyword_execute"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_function"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_procedure"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "FIELD",
                      "name": "parameter",
                      "content": {
                        "type": "SYMBOL",
                        "name": "term"
                      }
                    },
                    {
                      "type": "REPEAT",
                      "content": {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": ","
                          },
                          {
                            "type": "FIELD",
                            "name": "parameter",
                            "content": {
                              "type": "SYMBOL",
                              "name": "term"
                            }
                          }
                        ]
                      }
                    }
                  ]
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "_create_trigger_event": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_insert"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_update"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_of"
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "identifier"
                        },
                        {
                          "type": "REPEAT",
                          "content": {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": ","
                              },
                              {
                                "type": "SYMBOL",
                                "name": "identifier"
                              }
                            ]
                          }
                        }
                      ]
                    }
                  ]
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_delete"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_truncate"
        }
      ]
    },
    "create_type": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_create"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_type"
          },
          {
            "type": "SYMBOL",
            "name": "object_reference"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_as"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "column_definitions"
                          },
                          {
                            "type": "CHOICE",
                            "members": [
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "SYMBOL",
                                    "name": "keyword_collate"
                                  },
                                  {
                                    "type": "SYMBOL",
                                    "name": "identifier"
                                  }
                                ]
                              },
                              {
                                "type": "BLANK"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_as"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_enum"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "enum_elements"
                          }
                        ]
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "CHOICE",
                            "members": [
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "SYMBOL",
                                    "name": "keyword_as"
                                  },
                                  {
                                    "type": "SYMBOL",
                                    "name": "keyword_range"
                                  }
                                ]
                              },
                              {
                                "type": "BLANK"
                              }
                            ]
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": "("
                              },
                              {
                                "type": "CHOICE",
                                "members": [
                                  {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "SYMBOL",
                                        "name": "_with_settings"
                                      },
                                      {
                                        "type": "REPEAT",
                                        "content": {
                                          "type": "SEQ",
                                          "members": [
                                            {
                                              "type": "STRING",
                                              "value": ","
                                            },
                                            {
                                              "type": "SYMBOL",
                                              "name": "_with_settings"
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  {
                                    "type": "BLANK"
                                  }
                                ]
                              },
                              {
                                "type": "STRING",
                                "value": ")"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "enum_elements": {
      "type": "SEQ",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "FIELD",
                      "name": "enum_element",
                      "content": {
                        "type": "ALIAS",
                        "content": {
                          "type": "SYMBOL",
                          "name": "_literal_string"
                        },
                        "named": true,
                        "value": "literal"
                      }
                    },
                    {
                      "type": "REPEAT",
                      "content": {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": ","
                          },
                          {
                            "type": "FIELD",
                            "name": "enum_element",
                            "content": {
                              "type": "ALIAS",
                              "content": {
                                "type": "SYMBOL",
                                "name": "_literal_string"
                              },
                              "named": true,
                              "value": "literal"
                            }
                          }
                        ]
                      }
                    }
                  ]
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "create_policy": {
      "type": "PREC_RIGHT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_create"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_policy"
          },
          {
            "type": "SYMBOL",
            "name": "object_reference"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_on"
          },
          {
            "type": "SYMBOL",
            "name": "object_reference"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_as"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_permissive"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_restrictive"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_for"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_all"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_select"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_insert"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_update"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_delete"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_to"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "object_reference"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_public"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_current_role"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_current_user"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_session_user"
                      }
                    ]
                  },
                  {
                    "type": "REPEAT",
                    "content": {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "STRING",
                          "value": ","
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "object_reference"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_public"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_current_role"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_current_user"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_session_user"
                            }
                          ]
                        }
                      ]
                    }
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_using"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "parenthesized_expression"
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_with"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_check"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "parenthesized_expression"
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "_alter_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "alter_table"
            },
            {
              "type": "SYMBOL",
              "name": "alter_view"
            },
            {
              "type": "SYMBOL",
              "name": "alter_materialized_view"
            },
            {
              "type": "SYMBOL",
              "name": "alter_schema"
            },
            {
              "type": "SYMBOL",
              "name": "alter_type"
            },
            {
              "type": "SYMBOL",
              "name": "alter_index"
            },
            {
              "type": "SYMBOL",
              "name": "alter_database"
            },
            {
              "type": "SYMBOL",
              "name": "alter_role"
            },
            {
              "type": "SYMBOL",
              "name": "alter_sequence"
            },
            {
              "type": "SYMBOL",
              "name": "alter_policy"
            }
          ]
        }
      ]
    },
    "alter_table": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_alter"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_table"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_only"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "_alter_specifications"
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": ","
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_alter_specifications"
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_enable"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_disable"
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "keyword_no"
                            },
                            {
                              "type": "BLANK"
                            }
                          ]
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_force"
                        }
                      ]
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_row"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_level"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_security"
                }
              ]
            }
          ]
        }
      ]
    },
    "_alter_specifications": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "add_column"
        },
        {
          "type": "SYMBOL",
          "name": "add_constraint"
        },
        {
          "type": "SYMBOL",
          "name": "drop_constraint"
        },
        {
          "type": "SYMBOL",
          "name": "alter_column"
        },
        {
          "type": "SYMBOL",
          "name": "modify_column"
        },
        {
          "type": "SYMBOL",
          "name": "change_column"
        },
        {
          "type": "SYMBOL",
          "name": "drop_column"
        },
        {
          "type": "SYMBOL",
          "name": "rename_object"
        },
        {
          "type": "SYMBOL",
          "name": "rename_column"
        },
        {
          "type": "SYMBOL",
          "name": "set_schema"
        },
        {
          "type": "SYMBOL",
          "name": "change_ownership"
        }
      ]
    },
    "add_column": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_add"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_column"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_not_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "column_definition"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "column_position"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "add_constraint": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_add"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_constraint"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "SYMBOL",
          "name": "constraint"
        }
      ]
    },
    "drop_constraint": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_constraint"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_drop_behavior"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "alter_column": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_alter"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_column"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "FIELD",
          "name": "name",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_set"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_drop"
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_not"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_null"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_set"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_data"
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_type"
                },
                {
                  "type": "FIELD",
                  "name": "type",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_type"
                  }
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_set"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_statistics"
                        },
                        {
                          "type": "FIELD",
                          "name": "statistics",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_integer"
                          }
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_storage"
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "keyword_plain"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_external"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_extended"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_main"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_default"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_compression"
                        },
                        {
                          "type": "FIELD",
                          "name": "compression_method",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_identifier"
                          }
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SEQ",
                          "members": [
                            {
                              "type": "STRING",
                              "value": "("
                            },
                            {
                              "type": "SEQ",
                              "members": [
                                {
                                  "type": "SYMBOL",
                                  "name": "_key_value_pair"
                                },
                                {
                                  "type": "REPEAT",
                                  "content": {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "STRING",
                                        "value": ","
                                      },
                                      {
                                        "type": "SYMBOL",
                                        "name": "_key_value_pair"
                                      }
                                    ]
                                  }
                                }
                              ]
                            },
                            {
                              "type": "STRING",
                              "value": ")"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_default"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "_expression"
                        }
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_drop"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_default"
                }
              ]
            }
          ]
        }
      ]
    },
    "modify_column": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_modify"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_column"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "column_definition"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "column_position"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "change_column": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_change"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_column"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "FIELD",
          "name": "old_name",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        },
        {
          "type": "SYMBOL",
          "name": "column_definition"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "column_position"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "column_position": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_first"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_after"
            },
            {
              "type": "FIELD",
              "name": "col_name",
              "content": {
                "type": "SYMBOL",
                "name": "identifier"
              }
            }
          ]
        }
      ]
    },
    "drop_column": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_column"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "FIELD",
          "name": "name",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        }
      ]
    },
    "rename_column": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_rename"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_column"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "FIELD",
          "name": "old_name",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        },
        {
          "type": "SYMBOL",
          "name": "keyword_to"
        },
        {
          "type": "FIELD",
          "name": "new_name",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        }
      ]
    },
    "alter_view": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_alter"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_view"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "rename_object"
            },
            {
              "type": "SYMBOL",
              "name": "rename_column"
            },
            {
              "type": "SYMBOL",
              "name": "set_schema"
            },
            {
              "type": "SYMBOL",
              "name": "change_ownership"
            }
          ]
        }
      ]
    },
    "alter_materialized_view": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_alter"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_materialized"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_view"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "rename_object"
            },
            {
              "type": "SYMBOL",
              "name": "set_schema"
            },
            {
              "type": "SYMBOL",
              "name": "change_ownership"
            }
          ]
        }
      ]
    },
    "alter_schema": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_alter"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_schema"
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_rename"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_owner"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_to"
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        }
      ]
    },
    "alter_database": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_alter"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_database"
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_with"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "rename_object"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "change_ownership"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_reset"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_all"
                    },
                    {
                      "type": "FIELD",
                      "name": "configuration_parameter",
                      "content": {
                        "type": "SYMBOL",
                        "name": "identifier"
                      }
                    }
                  ]
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_set"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_tablespace"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "identifier"
                        }
                      ]
                    },
                    {
                      "type": "SYMBOL",
                      "name": "set_configuration"
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    "alter_role": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_alter"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_role"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_group"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_user"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "identifier"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_all"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "rename_object"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_with"
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "REPEAT",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_role_options"
                    }
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_in"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_database"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "identifier"
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_set"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "set_configuration"
                          }
                        ]
                      },
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_reset"
                          },
                          {
                            "type": "CHOICE",
                            "members": [
                              {
                                "type": "SYMBOL",
                                "name": "keyword_all"
                              },
                              {
                                "type": "FIELD",
                                "name": "option",
                                "content": {
                                  "type": "SYMBOL",
                                  "name": "identifier"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "set_configuration": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "option",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_from"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_current"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_to"
                    },
                    {
                      "type": "STRING",
                      "value": "="
                    }
                  ]
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "FIELD",
                      "name": "parameter",
                      "content": {
                        "type": "SYMBOL",
                        "name": "identifier"
                      }
                    },
                    {
                      "type": "SYMBOL",
                      "name": "literal"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_default"
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    "alter_index": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_alter"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_index"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "rename_object"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_alter"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_column"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_natural_number"
                  },
                  "named": true,
                  "value": "literal"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_set"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_statistics"
                },
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_natural_number"
                  },
                  "named": true,
                  "value": "literal"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_reset"
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "STRING",
                      "value": "("
                    },
                    {
                      "type": "CHOICE",
                      "members": [
                        {
                          "type": "SEQ",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "identifier"
                            },
                            {
                              "type": "REPEAT",
                              "content": {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "STRING",
                                    "value": ","
                                  },
                                  {
                                    "type": "SYMBOL",
                                    "name": "identifier"
                                  }
                                ]
                              }
                            }
                          ]
                        },
                        {
                          "type": "BLANK"
                        }
                      ]
                    },
                    {
                      "type": "STRING",
                      "value": ")"
                    }
                  ]
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_set"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_tablespace"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "identifier"
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "STRING",
                          "value": "("
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SEQ",
                              "members": [
                                {
                                  "type": "SEQ",
                                  "members": [
                                    {
                                      "type": "SYMBOL",
                                      "name": "identifier"
                                    },
                                    {
                                      "type": "STRING",
                                      "value": "="
                                    },
                                    {
                                      "type": "FIELD",
                                      "name": "value",
                                      "content": {
                                        "type": "SYMBOL",
                                        "name": "literal"
                                      }
                                    }
                                  ]
                                },
                                {
                                  "type": "REPEAT",
                                  "content": {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "STRING",
                                        "value": ","
                                      },
                                      {
                                        "type": "SEQ",
                                        "members": [
                                          {
                                            "type": "SYMBOL",
                                            "name": "identifier"
                                          },
                                          {
                                            "type": "STRING",
                                            "value": "="
                                          },
                                          {
                                            "type": "FIELD",
                                            "name": "value",
                                            "content": {
                                              "type": "SYMBOL",
                                              "name": "literal"
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              ]
                            },
                            {
                              "type": "BLANK"
                            }
                          ]
                        },
                        {
                          "type": "STRING",
                          "value": ")"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    "alter_sequence": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_alter"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_sequence"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "REPEAT1",
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_as"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_type"
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_increment"
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_by"
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      },
                      {
                        "type": "SYMBOL",
                        "name": "literal"
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_minvalue"
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "literal"
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "SYMBOL",
                                "name": "keyword_no"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_minvalue"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_maxvalue"
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "literal"
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "SYMBOL",
                                "name": "keyword_no"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_maxvalue"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_start"
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_with"
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      },
                      {
                        "type": "FIELD",
                        "name": "start",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_integer"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_restart"
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_with"
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      },
                      {
                        "type": "FIELD",
                        "name": "restart",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_integer"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_cache"
                      },
                      {
                        "type": "FIELD",
                        "name": "cache",
                        "content": {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_integer"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_no"
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_cycle"
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_owned"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_by"
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_none"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "object_reference"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            },
            {
              "type": "SYMBOL",
              "name": "rename_object"
            },
            {
              "type": "SYMBOL",
              "name": "change_ownership"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_set"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "CHOICE",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_logged"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_unlogged"
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_schema"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "identifier"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    "alter_policy": {
      "type": "PREC_RIGHT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_alter"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_policy"
          },
          {
            "type": "SYMBOL",
            "name": "object_reference"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_on"
          },
          {
            "type": "SYMBOL",
            "name": "object_reference"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "rename_object"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_to"
                          },
                          {
                            "type": "CHOICE",
                            "members": [
                              {
                                "type": "SYMBOL",
                                "name": "object_reference"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_public"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_current_role"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_current_user"
                              },
                              {
                                "type": "SYMBOL",
                                "name": "keyword_session_user"
                              }
                            ]
                          },
                          {
                            "type": "REPEAT",
                            "content": {
                              "type": "SEQ",
                              "members": [
                                {
                                  "type": "STRING",
                                  "value": ","
                                },
                                {
                                  "type": "CHOICE",
                                  "members": [
                                    {
                                      "type": "SYMBOL",
                                      "name": "object_reference"
                                    },
                                    {
                                      "type": "SYMBOL",
                                      "name": "keyword_public"
                                    },
                                    {
                                      "type": "SYMBOL",
                                      "name": "keyword_current_role"
                                    },
                                    {
                                      "type": "SYMBOL",
                                      "name": "keyword_current_user"
                                    },
                                    {
                                      "type": "SYMBOL",
                                      "name": "keyword_session_user"
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_using"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "parenthesized_expression"
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_with"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_check"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "parenthesized_expression"
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "alter_type": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_alter"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_type"
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "change_ownership"
            },
            {
              "type": "SYMBOL",
              "name": "set_schema"
            },
            {
              "type": "SYMBOL",
              "name": "rename_object"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_rename"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_attribute"
                },
                {
                  "type": "SYMBOL",
                  "name": "identifier"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_to"
                },
                {
                  "type": "SYMBOL",
                  "name": "identifier"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "_drop_behavior"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_add"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_value"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "_if_not_exists"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_single_quote_string"
                  },
                  "named": true,
                  "value": "literal"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "keyword_before"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_after"
                            }
                          ]
                        },
                        {
                          "type": "ALIAS",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_single_quote_string"
                          },
                          "named": true,
                          "value": "literal"
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_rename"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_value"
                },
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_single_quote_string"
                  },
                  "named": true,
                  "value": "literal"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_to"
                },
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_single_quote_string"
                  },
                  "named": true,
                  "value": "literal"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_add"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_attribute"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "identifier"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "_type"
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_drop"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_attribute"
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "_if_exists"
                            },
                            {
                              "type": "BLANK"
                            }
                          ]
                        },
                        {
                          "type": "SYMBOL",
                          "name": "identifier"
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_alter"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_attribute"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "identifier"
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SEQ",
                              "members": [
                                {
                                  "type": "SYMBOL",
                                  "name": "keyword_set"
                                },
                                {
                                  "type": "SYMBOL",
                                  "name": "keyword_data"
                                }
                              ]
                            },
                            {
                              "type": "BLANK"
                            }
                          ]
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_type"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "_type"
                        }
                      ]
                    }
                  ]
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_collate"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "identifier"
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "_drop_behavior"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    "_drop_behavior": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_cascade"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_restrict"
        }
      ]
    },
    "rename_object": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_rename"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_to"
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        }
      ]
    },
    "set_schema": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_set"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_schema"
        },
        {
          "type": "FIELD",
          "name": "schema",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        }
      ]
    },
    "change_ownership": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_owner"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_to"
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        }
      ]
    },
    "_drop_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "drop_table"
            },
            {
              "type": "SYMBOL",
              "name": "drop_view"
            },
            {
              "type": "SYMBOL",
              "name": "drop_materialized_view"
            },
            {
              "type": "SYMBOL",
              "name": "drop_index"
            },
            {
              "type": "SYMBOL",
              "name": "drop_type"
            },
            {
              "type": "SYMBOL",
              "name": "drop_schema"
            },
            {
              "type": "SYMBOL",
              "name": "drop_database"
            },
            {
              "type": "SYMBOL",
              "name": "drop_role"
            },
            {
              "type": "SYMBOL",
              "name": "drop_sequence"
            },
            {
              "type": "SYMBOL",
              "name": "drop_extension"
            },
            {
              "type": "SYMBOL",
              "name": "drop_function"
            },
            {
              "type": "SYMBOL",
              "name": "drop_procedure"
            }
          ]
        }
      ]
    },
    "drop_table": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_table"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_drop_behavior"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "drop_view": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_view"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_drop_behavior"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "drop_materialized_view": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_materialized"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_view"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_drop_behavior"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "drop_schema": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_schema"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_drop_behavior"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "drop_database": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_drop"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_database"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_if_exists"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "identifier"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_with"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_force"
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "drop_role": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_group"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_role"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_user"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        }
      ]
    },
    "drop_type": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_type"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_drop_behavior"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "drop_sequence": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_sequence"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_drop_behavior"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "drop_index": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_index"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_concurrently"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "FIELD",
          "name": "name",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_drop_behavior"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_on"
                },
                {
                  "type": "SYMBOL",
                  "name": "object_reference"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "drop_extension": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_extension"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "identifier"
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "SYMBOL",
                    "name": "identifier"
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_cascade"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_restrict"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "drop_function": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_function"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_drop_behavior"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "drop_procedure": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_drop"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_procedure"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_drop_behavior"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "_rename_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_rename"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_table"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_tables"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_if_exists"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_nowait"
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_wait"
                    },
                    {
                      "type": "FIELD",
                      "name": "timeout",
                      "content": {
                        "type": "ALIAS",
                        "content": {
                          "type": "SYMBOL",
                          "name": "_natural_number"
                        },
                        "named": true,
                        "value": "literal"
                      }
                    }
                  ]
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_to"
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "STRING",
                "value": ","
              },
              {
                "type": "SYMBOL",
                "name": "_rename_table_names"
              }
            ]
          }
        }
      ]
    },
    "_rename_table_names": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_to"
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        }
      ]
    },
    "_optimize_statement": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "_compute_stats"
        },
        {
          "type": "SYMBOL",
          "name": "_vacuum_table"
        },
        {
          "type": "SYMBOL",
          "name": "_optimize_table"
        }
      ]
    },
    "_compute_stats": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_analyze"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_table"
              },
              {
                "type": "SYMBOL",
                "name": "object_reference"
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_partition_spec"
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              },
              {
                "type": "SYMBOL",
                "name": "keyword_compute"
              },
              {
                "type": "SYMBOL",
                "name": "keyword_statistics"
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_for"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_columns"
                      }
                    ]
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_cache"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_metadata"
                      }
                    ]
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_noscan"
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              }
            ]
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_compute"
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_incremental"
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              },
              {
                "type": "SYMBOL",
                "name": "keyword_stats"
              },
              {
                "type": "SYMBOL",
                "name": "object_reference"
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "("
                          },
                          {
                            "type": "CHOICE",
                            "members": [
                              {
                                "type": "SEQ",
                                "members": [
                                  {
                                    "type": "REPEAT1",
                                    "content": {
                                      "type": "SYMBOL",
                                      "name": "field"
                                    }
                                  },
                                  {
                                    "type": "REPEAT",
                                    "content": {
                                      "type": "SEQ",
                                      "members": [
                                        {
                                          "type": "STRING",
                                          "value": ","
                                        },
                                        {
                                          "type": "REPEAT1",
                                          "content": {
                                            "type": "SYMBOL",
                                            "name": "field"
                                          }
                                        }
                                      ]
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "BLANK"
                              }
                            ]
                          },
                          {
                            "type": "STRING",
                            "value": ")"
                          }
                        ]
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_partition_spec"
                      }
                    ]
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "_optimize_table": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_optimize"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_rewrite"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_data"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_using"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_bin_pack"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "where"
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_optimize"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_local"
                    }
                  ]
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "keyword_table"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "SYMBOL",
                    "name": "object_reference"
                  }
                ]
              }
            }
          ]
        }
      ]
    },
    "_vacuum_table": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_vacuum"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_vacuum_option"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "object_reference"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "field"
                          },
                          {
                            "type": "REPEAT",
                            "content": {
                              "type": "SEQ",
                              "members": [
                                {
                                  "type": "STRING",
                                  "value": ","
                                },
                                {
                                  "type": "SYMBOL",
                                  "name": "field"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "_vacuum_option": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_full"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_true"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_false"
                    }
                  ]
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_parallel"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_true"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_false"
                    }
                  ]
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_analyze"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_true"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_false"
                    }
                  ]
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        }
      ]
    },
    "_partition_spec": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_partition"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "table_option"
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": ","
                      },
                      {
                        "type": "SYMBOL",
                        "name": "table_option"
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "_merge_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_merge"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_into"
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_alias"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_using"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "subquery"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_alias"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_on"
        },
        {
          "type": "PREC_RIGHT",
          "value": 0,
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "FIELD",
                "name": "predicate",
                "content": {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "FIELD",
                    "name": "predicate",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_expression"
                    }
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          }
        },
        {
          "type": "REPEAT1",
          "content": {
            "type": "SYMBOL",
            "name": "when_clause"
          }
        }
      ]
    },
    "when_clause": {
      "type": "PREC_LEFT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_when"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_not"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "keyword_matched"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_and"
                  },
                  {
                    "type": "PREC_RIGHT",
                    "value": 0,
                    "content": {
                      "type": "CHOICE",
                      "members": [
                        {
                          "type": "FIELD",
                          "name": "predicate",
                          "content": {
                            "type": "SYMBOL",
                            "name": "_expression"
                          }
                        },
                        {
                          "type": "SEQ",
                          "members": [
                            {
                              "type": "STRING",
                              "value": "("
                            },
                            {
                              "type": "FIELD",
                              "name": "predicate",
                              "content": {
                                "type": "SYMBOL",
                                "name": "_expression"
                              }
                            },
                            {
                              "type": "STRING",
                              "value": ")"
                            }
                          ]
                        }
                      ]
                    }
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "keyword_then"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_delete"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_update"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_set_values"
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_insert"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_insert_values"
                  }
                ]
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "where"
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    "_refresh_statement": {
      "type": "SYMBOL",
      "name": "refresh_materialized_view"
    },
    "refresh_materialized_view": {
      "type": "PREC_RIGHT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_refresh"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_materialized"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_view"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "keyword_concurrently"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "object_reference"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_with"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_data"
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_with"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_no"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "keyword_data"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "comment_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_comment"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_on"
        },
        {
          "type": "SYMBOL",
          "name": "_comment_target"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_is"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_null"
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_literal_string"
              },
              "named": true,
              "value": "literal"
            }
          ]
        }
      ]
    },
    "_comment_target": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "cast"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_column"
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_qualified_field"
              },
              "named": true,
              "value": "object_reference"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_database"
            },
            {
              "type": "SYMBOL",
              "name": "identifier"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_extension"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_function"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "function_arguments"
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_index"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_materialized"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_view"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_procedure"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "function_arguments"
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_role"
            },
            {
              "type": "SYMBOL",
              "name": "identifier"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_schema"
            },
            {
              "type": "SYMBOL",
              "name": "identifier"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_sequence"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_table"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_tablespace"
            },
            {
              "type": "SYMBOL",
              "name": "identifier"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_trigger"
            },
            {
              "type": "SYMBOL",
              "name": "identifier"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_on"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_type"
            },
            {
              "type": "SYMBOL",
              "name": "identifier"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_view"
            },
            {
              "type": "SYMBOL",
              "name": "object_reference"
            }
          ]
        }
      ]
    },
    "_dml_write": {
      "type": "SEQ",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "_cte"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "_delete_statement"
                },
                {
                  "type": "SYMBOL",
                  "name": "_insert_statement"
                },
                {
                  "type": "SYMBOL",
                  "name": "_update_statement"
                },
                {
                  "type": "SYMBOL",
                  "name": "_truncate_statement"
                },
                {
                  "type": "SYMBOL",
                  "name": "_copy_statement"
                }
              ]
            }
          ]
        }
      ]
    },
    "_delete_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "delete"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_delete_from"
          },
          "named": true,
          "value": "from"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "returning"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "_delete_from": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_from"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_only"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "where"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "order_by"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "limit"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "delete": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_delete"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "index_hint"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "_insert_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "insert"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "returning"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "insert": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_insert"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_replace"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_low_priority"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_delayed"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_high_priority"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_ignore"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_into"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_overwrite"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "table_partition"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_as"
                },
                {
                  "type": "FIELD",
                  "name": "alias",
                  "content": {
                    "type": "SYMBOL",
                    "name": "identifier"
                  }
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_insert_values"
            },
            {
              "type": "SYMBOL",
              "name": "_set_values"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "_on_conflict"
                },
                {
                  "type": "SYMBOL",
                  "name": "_on_duplicate_key_update"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "_on_conflict": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_on"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_conflict"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_do"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_nothing"
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_update"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "_set_values"
                    },
                    {
                      "type": "CHOICE",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "where"
                        },
                        {
                          "type": "BLANK"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    "_on_duplicate_key_update": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_on"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_duplicate"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_key"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_update"
        },
        {
          "type": "SYMBOL",
          "name": "assignment_list"
        }
      ]
    },
    "assignment_list": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "assignment"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "STRING",
                "value": ","
              },
              {
                "type": "SYMBOL",
                "name": "assignment"
              }
            ]
          }
        }
      ]
    },
    "assignment": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "left",
          "content": {
            "type": "ALIAS",
            "content": {
              "type": "SYMBOL",
              "name": "_qualified_field"
            },
            "named": true,
            "value": "field"
          }
        },
        {
          "type": "STRING",
          "value": "="
        },
        {
          "type": "FIELD",
          "name": "right",
          "content": {
            "type": "SYMBOL",
            "name": "_expression"
          }
        }
      ]
    },
    "_insert_values": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_column_list"
              },
              "named": true,
              "value": "list"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_values"
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "list"
                    },
                    {
                      "type": "REPEAT",
                      "content": {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "STRING",
                            "value": ","
                          },
                          {
                            "type": "SYMBOL",
                            "name": "list"
                          }
                        ]
                      }
                    }
                  ]
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "_dml_read"
            }
          ]
        }
      ]
    },
    "_set_values": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_set"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "assignment"
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "SYMBOL",
                    "name": "assignment"
                  }
                ]
              }
            }
          ]
        }
      ]
    },
    "_update_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "update"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "returning"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "update": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_update"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_only"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_mysql_update_statement"
            },
            {
              "type": "SYMBOL",
              "name": "_postgres_update_statement"
            }
          ]
        }
      ]
    },
    "_mysql_update_statement": {
      "type": "PREC",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "relation"
              },
              {
                "type": "REPEAT",
                "content": {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "STRING",
                      "value": ","
                    },
                    {
                      "type": "SYMBOL",
                      "name": "relation"
                    }
                  ]
                }
              }
            ]
          },
          {
            "type": "REPEAT",
            "content": {
              "type": "SYMBOL",
              "name": "join"
            }
          },
          {
            "type": "SYMBOL",
            "name": "_set_values"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "where"
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "_postgres_update_statement": {
      "type": "PREC",
      "value": 1,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "relation"
          },
          {
            "type": "SYMBOL",
            "name": "_set_values"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "from"
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "_truncate_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_truncate"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_table"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_only"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "object_reference"
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": ","
                      },
                      {
                        "type": "SYMBOL",
                        "name": "object_reference"
                      }
                    ]
                  }
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_drop_behavior"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "_copy_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_copy"
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        },
        {
          "type": "SYMBOL",
          "name": "_column_list"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_from"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_stdin"
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "_literal_string"
              },
              "named": false,
              "value": "filename"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_program"
                },
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_literal_string"
                  },
                  "named": false,
                  "value": "command"
                }
              ]
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_with"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "REPEAT1",
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_format"
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_csv"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_binary"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_text"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_freeze"
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_true"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_false"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_header"
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_true"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_false"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_match"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_delimiter"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_null"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_default"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_escape"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_quote"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_encoding"
                          }
                        ]
                      },
                      {
                        "type": "ALIAS",
                        "content": {
                          "type": "SYMBOL",
                          "name": "_literal_string"
                        },
                        "named": true,
                        "value": "identifier"
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_force_null"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_force_not_null"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "keyword_force_quote"
                          }
                        ]
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_column_list"
                      }
                    ]
                  }
                ]
              }
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "where"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "_dml_read": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "PREC_RIGHT",
              "value": 0,
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_cte"
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": "("
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_cte"
                      },
                      {
                        "type": "STRING",
                        "value": ")"
                      }
                    ]
                  }
                ]
              }
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "PREC_RIGHT",
          "value": 0,
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_select_statement"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "set_operation"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_show_statement"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_unload_statement"
                  }
                ]
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "_select_statement"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "set_operation"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_show_statement"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "_unload_statement"
                      }
                    ]
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          }
        }
      ]
    },
    "_cte": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_with"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_recursive"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "cte"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "STRING",
                "value": ","
              },
              {
                "type": "SYMBOL",
                "name": "cte"
              }
            ]
          }
        }
      ]
    },
    "cte": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "STRING",
                  "value": "("
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "FIELD",
                          "name": "argument",
                          "content": {
                            "type": "SYMBOL",
                            "name": "identifier"
                          }
                        },
                        {
                          "type": "REPEAT",
                          "content": {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": ","
                              },
                              {
                                "type": "FIELD",
                                "name": "argument",
                                "content": {
                                  "type": "SYMBOL",
                                  "name": "identifier"
                                }
                              }
                            ]
                          }
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "STRING",
                  "value": ")"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_as"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_not"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_materialized"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_dml_read"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_dml_write"
                  }
                ]
              },
              "named": true,
              "value": "statement"
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "set_operation": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "_select_statement"
        },
        {
          "type": "REPEAT1",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "operation",
                "content": {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_union"
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "keyword_all"
                            },
                            {
                              "type": "BLANK"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_except"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_intersect"
                    }
                  ]
                }
              },
              {
                "type": "SYMBOL",
                "name": "_select_statement"
              }
            ]
          }
        }
      ]
    },
    "_select_statement": {
      "type": "PREC_RIGHT",
      "value": 0,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "select"
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "keyword_into"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "select_expression"
                      }
                    ]
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "from"
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              }
            ]
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "STRING",
                "value": "("
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "select"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_into"
                          },
                          {
                            "type": "SYMBOL",
                            "name": "select_expression"
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "from"
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "STRING",
                "value": ")"
              }
            ]
          }
        ]
      }
    },
    "select": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_select"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_distinct"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "select_expression"
            }
          ]
        }
      ]
    },
    "select_expression": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "term"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "STRING",
                "value": ","
              },
              {
                "type": "SYMBOL",
                "name": "term"
              }
            ]
          }
        }
      ]
    },
    "term": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "all_fields"
              },
              {
                "type": "SYMBOL",
                "name": "_expression"
              }
            ]
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_alias"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "all_fields": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "object_reference"
                },
                {
                  "type": "STRING",
                  "value": "."
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "STRING",
          "value": "*"
        }
      ]
    },
    "partition_by": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_partition"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_by"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_expression"
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_expression"
                  }
                ]
              }
            }
          ]
        }
      ]
    },
    "frame_definition": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unbounded"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_preceding"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "FIELD",
                  "name": "start",
                  "content": {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "identifier"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "binary_expression"
                      },
                      {
                        "type": "ALIAS",
                        "content": {
                          "type": "SYMBOL",
                          "name": "_literal_string"
                        },
                        "named": true,
                        "value": "literal"
                      },
                      {
                        "type": "ALIAS",
                        "content": {
                          "type": "SYMBOL",
                          "name": "_integer"
                        },
                        "named": true,
                        "value": "literal"
                      }
                    ]
                  }
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_preceding"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "_current_row"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "FIELD",
                  "name": "end",
                  "content": {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SYMBOL",
                        "name": "identifier"
                      },
                      {
                        "type": "SYMBOL",
                        "name": "binary_expression"
                      },
                      {
                        "type": "ALIAS",
                        "content": {
                          "type": "SYMBOL",
                          "name": "_literal_string"
                        },
                        "named": true,
                        "value": "literal"
                      },
                      {
                        "type": "ALIAS",
                        "content": {
                          "type": "SYMBOL",
                          "name": "_integer"
                        },
                        "named": true,
                        "value": "literal"
                      }
                    ]
                  }
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_following"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_unbounded"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_following"
                }
              ]
            }
          ]
        }
      ]
    },
    "window_frame": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_range"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_rows"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_groups"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_between"
                },
                {
                  "type": "SYMBOL",
                  "name": "frame_definition"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_and"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "frame_definition"
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "frame_definition"
                }
              ]
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "_exclude_current_row"
                },
                {
                  "type": "SYMBOL",
                  "name": "_exclude_group"
                },
                {
                  "type": "SYMBOL",
                  "name": "_exclude_ties"
                },
                {
                  "type": "SYMBOL",
                  "name": "_exclude_no_others"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "window_clause": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_window"
        },
        {
          "type": "SYMBOL",
          "name": "identifier"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_as"
        },
        {
          "type": "SYMBOL",
          "name": "window_specification"
        }
      ]
    },
    "window_specification": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "("
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "partition_by"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "order_by"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "window_frame"
                },
                {
                  "type": "BLANK"
                }
              ]
            }
          ]
        },
        {
          "type": "STRING",
          "value": ")"
        }
      ]
    },
    "window_function": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "invocation"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_over"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "identifier"
            },
            {
              "type": "SYMBOL",
              "name": "window_specification"
            }
          ]
        }
      ]
    },
    "_alias": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_as"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "FIELD",
          "name": "alias",
          "content": {
            "type": "SYMBOL",
            "name": "identifier"
          }
        }
      ]
    },
    "from": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_from"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_only"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "relation"
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "SYMBOL",
                    "name": "relation"
                  }
                ]
              }
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "index_hint"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "join"
              },
              {
                "type": "SYMBOL",
                "name": "cross_join"
              },
              {
                "type": "SYMBOL",
                "name": "lateral_join"
              },
              {
                "type": "SYMBOL",
                "name": "lateral_cross_join"
              }
            ]
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "where"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "group_by"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "having"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "window_clause"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "order_by"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "limit"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "relation": {
      "type": "PREC_RIGHT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "subquery"
              },
              {
                "type": "SYMBOL",
                "name": "invocation"
              },
              {
                "type": "SYMBOL",
                "name": "object_reference"
              },
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": "("
                  },
                  {
                    "type": "SYMBOL",
                    "name": "values"
                  },
                  {
                    "type": "STRING",
                    "value": ")"
                  }
                ]
              }
            ]
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "_alias"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "ALIAS",
                        "content": {
                          "type": "SYMBOL",
                          "name": "_column_list"
                        },
                        "named": true,
                        "value": "list"
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "values": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_values"
        },
        {
          "type": "SYMBOL",
          "name": "list"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "SYMBOL",
                    "name": "list"
                  }
                ]
              }
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "index_hint": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_force"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_use"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_ignore"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_index"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_for"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_join"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "FIELD",
              "name": "index_name",
              "content": {
                "type": "SYMBOL",
                "name": "identifier"
              }
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        }
      ]
    },
    "join": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_natural"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_left"
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_full"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_outer"
                    }
                  ]
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_left"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_outer"
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_right"
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_right"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_outer"
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_inner"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_full"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_join"
        },
        {
          "type": "SYMBOL",
          "name": "relation"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "index_hint"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "join"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_on"
                },
                {
                  "type": "FIELD",
                  "name": "predicate",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_expression"
                  }
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_using"
                },
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_column_list"
                  },
                  "named": true,
                  "value": "list"
                }
              ]
            }
          ]
        }
      ]
    },
    "cross_join": {
      "type": "PREC_RIGHT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_cross"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_join"
          },
          {
            "type": "SYMBOL",
            "name": "relation"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SEQ",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "keyword_with"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "keyword_ordinality"
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "SEQ",
                        "members": [
                          {
                            "type": "SYMBOL",
                            "name": "keyword_as"
                          },
                          {
                            "type": "FIELD",
                            "name": "alias",
                            "content": {
                              "type": "SYMBOL",
                              "name": "identifier"
                            }
                          },
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": "("
                              },
                              {
                                "type": "CHOICE",
                                "members": [
                                  {
                                    "type": "SEQ",
                                    "members": [
                                      {
                                        "type": "SYMBOL",
                                        "name": "identifier"
                                      },
                                      {
                                        "type": "REPEAT",
                                        "content": {
                                          "type": "SEQ",
                                          "members": [
                                            {
                                              "type": "STRING",
                                              "value": ","
                                            },
                                            {
                                              "type": "SYMBOL",
                                              "name": "identifier"
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  {
                                    "type": "BLANK"
                                  }
                                ]
                              },
                              {
                                "type": "STRING",
                                "value": ")"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  }
                ]
              },
              {
                "type": "BLANK"
              }
            ]
          }
        ]
      }
    },
    "lateral_join": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_left"
                },
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_left"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_outer"
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_inner"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_join"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_lateral"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "invocation"
            },
            {
              "type": "SYMBOL",
              "name": "subquery"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_as"
                    },
                    {
                      "type": "FIELD",
                      "name": "alias",
                      "content": {
                        "type": "SYMBOL",
                        "name": "identifier"
                      }
                    }
                  ]
                },
                {
                  "type": "FIELD",
                  "name": "alias",
                  "content": {
                    "type": "SYMBOL",
                    "name": "identifier"
                  }
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_on"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_expression"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_true"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_false"
            }
          ]
        }
      ]
    },
    "lateral_cross_join": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_cross"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_join"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_lateral"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "invocation"
            },
            {
              "type": "SYMBOL",
              "name": "subquery"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_as"
                    },
                    {
                      "type": "FIELD",
                      "name": "alias",
                      "content": {
                        "type": "SYMBOL",
                        "name": "identifier"
                      }
                    }
                  ]
                },
                {
                  "type": "FIELD",
                  "name": "alias",
                  "content": {
                    "type": "SYMBOL",
                    "name": "identifier"
                  }
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "where": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_where"
        },
        {
          "type": "FIELD",
          "name": "predicate",
          "content": {
            "type": "SYMBOL",
            "name": "_expression"
          }
        }
      ]
    },
    "group_by": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_group"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_by"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_expression"
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "STRING",
                    "value": ","
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_expression"
                  }
                ]
              }
            }
          ]
        }
      ]
    },
    "having": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_having"
        },
        {
          "type": "SYMBOL",
          "name": "_expression"
        }
      ]
    },
    "order_by": {
      "type": "PREC_RIGHT",
      "value": 0,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "SYMBOL",
            "name": "keyword_order"
          },
          {
            "type": "SYMBOL",
            "name": "keyword_by"
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "SYMBOL",
                "name": "order_target"
              },
              {
                "type": "REPEAT",
                "content": {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "STRING",
                      "value": ","
                    },
                    {
                      "type": "SYMBOL",
                      "name": "order_target"
                    }
                  ]
                }
              }
            ]
          }
        ]
      }
    },
    "order_target": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "_expression"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "direction"
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_using"
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "STRING",
                              "value": "<"
                            },
                            {
                              "type": "STRING",
                              "value": ">"
                            },
                            {
                              "type": "STRING",
                              "value": "<="
                            },
                            {
                              "type": "STRING",
                              "value": ">="
                            }
                          ]
                        }
                      ]
                    }
                  ]
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_nulls"
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "keyword_first"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_last"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "limit": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_limit"
        },
        {
          "type": "SYMBOL",
          "name": "literal"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "offset"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "offset": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_offset"
        },
        {
          "type": "SYMBOL",
          "name": "literal"
        }
      ]
    },
    "returning": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_returning"
        },
        {
          "type": "SYMBOL",
          "name": "select_expression"
        }
      ]
    },
    "set_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_set"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "CHOICE",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_session"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_local"
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "object_reference"
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "keyword_to"
                            },
                            {
                              "type": "STRING",
                              "value": "="
                            }
                          ]
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "literal"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_default"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "identifier"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_on"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_off"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_schema"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "literal"
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_names"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "literal"
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_time"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_zone"
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "literal"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_local"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_default"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_session"
                        },
                        {
                          "type": "SYMBOL",
                          "name": "keyword_authorization"
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "identifier"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_default"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "keyword_role"
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "identifier"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "keyword_none"
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_constraints"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_all"
                    },
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "SYMBOL",
                          "name": "identifier"
                        },
                        {
                          "type": "REPEAT",
                          "content": {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": ","
                              },
                              {
                                "type": "SYMBOL",
                                "name": "identifier"
                              }
                            ]
                          }
                        }
                      ]
                    }
                  ]
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_deferred"
                    },
                    {
                      "type": "SYMBOL",
                      "name": "keyword_immediate"
                    }
                  ]
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_transaction"
                },
                {
                  "type": "SYMBOL",
                  "name": "_transaction_mode"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_transaction"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_snapshot"
                },
                {
                  "type": "SYMBOL",
                  "name": "_transaction_mode"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_session"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_characteristics"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_as"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_transaction"
                },
                {
                  "type": "SYMBOL",
                  "name": "_transaction_mode"
                }
              ]
            }
          ]
        }
      ]
    },
    "_transaction_mode": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_isolation"
        },
        {
          "type": "SYMBOL",
          "name": "keyword_level"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_serializable"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_repeatable"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_read"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_read"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_committed"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_read"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_uncommitted"
                }
              ]
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_read"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_write"
                }
              ]
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_read"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_only"
                }
              ]
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_not"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_deferrable"
        }
      ]
    },
    "reset_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_reset"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "object_reference"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_all"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_session"
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_authorization"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "keyword_role"
            }
          ]
        }
      ]
    },
    "_show_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_show"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "_show_create"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_all"
            },
            {
              "type": "SYMBOL",
              "name": "_show_tables"
            }
          ]
        }
      ]
    },
    "_show_create": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_create"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "keyword_schema"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_table"
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SYMBOL",
                      "name": "keyword_materialized"
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                },
                {
                  "type": "SYMBOL",
                  "name": "keyword_view"
                }
              ]
            },
            {
              "type": "SYMBOL",
              "name": "keyword_user"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_trigger"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_procedure"
            },
            {
              "type": "SYMBOL",
              "name": "keyword_function"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "object_reference"
        }
      ]
    },
    "_show_tables": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_tables"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_from"
                },
                {
                  "type": "SYMBOL",
                  "name": "_qualified_field"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "keyword_like"
                },
                {
                  "type": "SYMBOL",
                  "name": "_expression"
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "_unload_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "keyword_unload"
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "("
            },
            {
              "type": "SYMBOL",
              "name": "_select_statement"
            },
            {
              "type": "STRING",
              "value": ")"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "keyword_to"
        },
        {
          "type": "SYMBOL",
          "name": "_single_quote_string"
        },
        {
          "type": "SYMBOL",
          "name": "storage_parameters"
        }
      ]
    }
  },
  "extras": [
    {
      "type": "PATTERN",
      "value": "\\s\\n"
    },
    {
      "type": "PATTERN",
      "value": "\\s"
    },
    {
      "type": "SYMBOL",
      "name": "comment"
    },
    {
      "type": "SYMBOL",
      "name": "marginalia"
    }
  ],
  "conflicts": [
    [
      "object_reference",
      "_qualified_field"
    ],
    [
      "field",
      "_qualified_field"
    ],
    [
      "_column",
      "_qualified_field"
    ],
    [
      "object_reference"
    ],
    [
      "between_expression",
      "binary_expression"
    ],
    [
      "time"
    ],
    [
      "timestamp"
    ]
  ],
  "precedences": [
    [
      {
        "type": "STRING",
        "value": "binary_is"
      },
      {
        "type": "STRING",
        "value": "unary_not"
      },
      {
        "type": "STRING",
        "value": "binary_exp"
      },
      {
        "type": "STRING",
        "value": "binary_times"
      },
      {
        "type": "STRING",
        "value": "binary_plus"
      },
      {
        "type": "STRING",
        "value": "unary_other"
      },
      {
        "type": "STRING",
        "value": "binary_other"
      },
      {
        "type": "STRING",
        "value": "binary_in"
      },
      {
        "type": "STRING",
        "value": "binary_compare"
      },
      {
        "type": "STRING",
        "value": "binary_relation"
      },
      {
        "type": "STRING",
        "value": "pattern_matching"
      },
      {
        "type": "STRING",
        "value": "between"
      },
      {
        "type": "STRING",
        "value": "clause_connective"
      },
      {
        "type": "STRING",
        "value": "clause_disjunctive"
      }
    ]
  ],
  "externals": [
    {
      "type": "SYMBOL",
      "name": "_dollar_quoted_string_start_tag"
    },
    {
      "type": "SYMBOL",
      "name": "_dollar_quoted_string_end_tag"
    },
    {
      "type": "SYMBOL",
      "name": "_dollar_quoted_string"
    }
  ],
  "inline": [],
  "supertypes": [],
  "reserved": {}
}