{
  "name": "svelte",
  "inherits": "html",
  "rules": {
    "document": {
      "type": "REPEAT",
      "content": {
        "type": "SYMBOL",
        "name": "_node"
      }
    },
    "doctype": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "<!"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_doctype"
          },
          "named": false,
          "value": "doctype"
        },
        {
          "type": "PATTERN",
          "value": "[^>]+"
        },
        {
          "type": "STRING",
          "value": ">"
        }
      ]
    },
    "_doctype": {
      "type": "PATTERN",
      "value": "[Dd][Oo][Cc][Tt][Yy][Pp][Ee]"
    },
    "_node": {
      "type": "CHOICE",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "doctype"
            },
            {
              "type": "SYMBOL",
              "name": "entity"
            },
            {
              "type": "SYMBOL",
              "name": "text"
            },
            {
              "type": "SYMBOL",
              "name": "element"
            },
            {
              "type": "SYMBOL",
              "name": "script_element"
            },
            {
              "type": "SYMBOL",
              "name": "style_element"
            },
            {
              "type": "SYMBOL",
              "name": "erroneous_end_tag"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "if_statement"
        },
        {
          "type": "SYMBOL",
          "name": "each_statement"
        },
        {
          "type": "SYMBOL",
          "name": "await_statement"
        },
        {
          "type": "SYMBOL",
          "name": "key_statement"
        },
        {
          "type": "SYMBOL",
          "name": "snippet_statement"
        },
        {
          "type": "SYMBOL",
          "name": "expression"
        },
        {
          "type": "SYMBOL",
          "name": "html_tag"
        },
        {
          "type": "SYMBOL",
          "name": "const_tag"
        },
        {
          "type": "SYMBOL",
          "name": "debug_tag"
        },
        {
          "type": "SYMBOL",
          "name": "render_tag"
        }
      ]
    },
    "element": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "SYMBOL",
              "name": "start_tag"
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "SYMBOL",
                "name": "_node"
              }
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "end_tag"
                },
                {
                  "type": "SYMBOL",
                  "name": "_implicit_end_tag"
                }
              ]
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "self_closing_tag"
        }
      ]
    },
    "script_element": {
      "type": "SEQ",
      "members": [
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "script_start_tag"
          },
          "named": true,
          "value": "start_tag"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "raw_text"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "end_tag"
        }
      ]
    },
    "style_element": {
      "type": "SEQ",
      "members": [
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "style_start_tag"
          },
          "named": true,
          "value": "start_tag"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "raw_text"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "end_tag"
        }
      ]
    },
    "start_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "<"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_start_tag_name"
          },
          "named": true,
          "value": "tag_name"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "attribute"
          }
        },
        {
          "type": "STRING",
          "value": ">"
        }
      ]
    },
    "script_start_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "<"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_script_start_tag_name"
          },
          "named": true,
          "value": "tag_name"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "attribute"
          }
        },
        {
          "type": "STRING",
          "value": ">"
        }
      ]
    },
    "style_start_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "<"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_style_start_tag_name"
          },
          "named": true,
          "value": "tag_name"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "attribute"
          }
        },
        {
          "type": "STRING",
          "value": ">"
        }
      ]
    },
    "self_closing_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "<"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_start_tag_name"
          },
          "named": true,
          "value": "tag_name"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "attribute"
          }
        },
        {
          "type": "STRING",
          "value": "/>"
        }
      ]
    },
    "end_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "</"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_end_tag_name"
          },
          "named": true,
          "value": "tag_name"
        },
        {
          "type": "STRING",
          "value": ">"
        }
      ]
    },
    "erroneous_end_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "</"
        },
        {
          "type": "SYMBOL",
          "name": "erroneous_end_tag_name"
        },
        {
          "type": "STRING",
          "value": ">"
        }
      ]
    },
    "attribute": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "attribute_name"
                },
                {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "SEQ",
                      "members": [
                        {
                          "type": "STRING",
                          "value": "="
                        },
                        {
                          "type": "CHOICE",
                          "members": [
                            {
                              "type": "SYMBOL",
                              "name": "attribute_value"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "quoted_attribute_value"
                            },
                            {
                              "type": "SYMBOL",
                              "name": "expression"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "type": "BLANK"
                    }
                  ]
                }
              ]
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "expression"
              },
              "named": true,
              "value": "attribute_name"
            }
          ]
        }
      ]
    },
    "attribute_name": {
      "type": "PATTERN",
      "value": "[^<>{}\"'/=\\s]+"
    },
    "attribute_value": {
      "type": "PATTERN",
      "value": "[^<>{}\"'=\\s]+"
    },
    "entity": {
      "type": "PATTERN",
      "value": "&(#([xX][0-9a-fA-F]{1,6}|[0-9]{1,5})|[A-Za-z]{1,30});?"
    },
    "quoted_attribute_value": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "'"
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_single_quoted_attribute_value"
                  },
                  "named": true,
                  "value": "attribute_value"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "STRING",
              "value": "'"
            }
          ]
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "STRING",
              "value": "\""
            },
            {
              "type": "CHOICE",
              "members": [
                {
                  "type": "ALIAS",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_double_quoted_attribute_value"
                  },
                  "named": true,
                  "value": "attribute_value"
                },
                {
                  "type": "BLANK"
                }
              ]
            },
            {
              "type": "STRING",
              "value": "\""
            }
          ]
        }
      ]
    },
    "text": {
      "type": "PATTERN",
      "value": "[^<>{}&\\s]([^<>{}&]*[^<>{}&\\s])?"
    },
    "_single_quoted_attribute_value": {
      "type": "REPEAT1",
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "PATTERN",
            "value": "[^{']+"
          },
          {
            "type": "SYMBOL",
            "name": "expression"
          }
        ]
      }
    },
    "_double_quoted_attribute_value": {
      "type": "REPEAT1",
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "PATTERN",
            "value": "[^{\"]+"
          },
          {
            "type": "SYMBOL",
            "name": "expression"
          }
        ]
      }
    },
    "if_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "if_start"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_node"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "else_if_block"
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "else_block"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "if_end"
        }
      ]
    },
    "_if_start_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "#"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "if"
            }
          }
        }
      ]
    },
    "if_start": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_if_start_tag"
          },
          "named": true,
          "value": "block_start_tag"
        },
        {
          "type": "FIELD",
          "name": "condition",
          "content": {
            "type": "SYMBOL",
            "name": "svelte_raw_text"
          }
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "_else_if_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": ":"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "else if"
            }
          }
        }
      ]
    },
    "else_if_start": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_else_if_tag"
          },
          "named": true,
          "value": "block_tag"
        },
        {
          "type": "FIELD",
          "name": "condition",
          "content": {
            "type": "SYMBOL",
            "name": "svelte_raw_text"
          }
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "else_if_block": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "else_if_start"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_node"
          }
        }
      ]
    },
    "_else_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": ":"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "else"
            }
          }
        }
      ]
    },
    "else_start": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_else_tag"
          },
          "named": true,
          "value": "block_tag"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "else_block": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "else_start"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_node"
          }
        }
      ]
    },
    "_if_end_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "/"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "if"
            }
          }
        }
      ]
    },
    "if_end": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_if_end_tag"
          },
          "named": true,
          "value": "block_end_tag"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "each_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "each_start"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_node"
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "SYMBOL",
                  "name": "else_block"
                },
                {
                  "type": "REPEAT",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_node"
                  }
                }
              ]
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "each_end"
        }
      ]
    },
    "_each_start_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "#"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "each"
            }
          }
        }
      ]
    },
    "each_start": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_each_start_tag"
          },
          "named": true,
          "value": "block_start_tag"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "FIELD",
              "name": "identifier",
              "content": {
                "type": "SYMBOL",
                "name": "svelte_raw_text"
              }
            },
            {
              "type": "SEQ",
              "members": [
                {
                  "type": "FIELD",
                  "name": "identifier",
                  "content": {
                    "type": "ALIAS",
                    "content": {
                      "type": "SYMBOL",
                      "name": "svelte_raw_text_each"
                    },
                    "named": true,
                    "value": "svelte_raw_text"
                  }
                },
                {
                  "type": "STRING",
                  "value": "as"
                },
                {
                  "type": "FIELD",
                  "name": "parameter",
                  "content": {
                    "type": "SYMBOL",
                    "name": "svelte_raw_text"
                  }
                }
              ]
            }
          ]
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "_each_end_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "/"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "each"
            }
          }
        }
      ]
    },
    "each_end": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_each_end_tag"
          },
          "named": true,
          "value": "block_end_tag"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "await_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "await_start"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_node"
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "then_block"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "catch_block"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "SYMBOL",
          "name": "await_end"
        }
      ]
    },
    "_await_start_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "#"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "await"
            }
          }
        }
      ]
    },
    "await_start": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_await_start_tag"
          },
          "named": true,
          "value": "block_start_tag"
        },
        {
          "type": "SYMBOL",
          "name": "svelte_raw_text"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "_then_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": ":"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "then"
            }
          }
        }
      ]
    },
    "then_start": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_then_tag"
          },
          "named": true,
          "value": "block_tag"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "svelte_raw_text"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "then_block": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "then_start"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_node"
          }
        }
      ]
    },
    "_catch_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": ":"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "catch"
            }
          }
        }
      ]
    },
    "catch_start": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_catch_tag"
          },
          "named": true,
          "value": "block_tag"
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "svelte_raw_text"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "catch_block": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "catch_start"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_node"
          }
        }
      ]
    },
    "_await_end_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "/"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "await"
            }
          }
        }
      ]
    },
    "await_end": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_await_end_tag"
          },
          "named": true,
          "value": "block_end_tag"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "key_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "key_start"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_node"
          }
        },
        {
          "type": "SYMBOL",
          "name": "key_end"
        }
      ]
    },
    "_key_start_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "#"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "key"
            }
          }
        }
      ]
    },
    "key_start": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_key_start_tag"
          },
          "named": true,
          "value": "block_start_tag"
        },
        {
          "type": "SYMBOL",
          "name": "svelte_raw_text"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "_key_end_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "/"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "key"
            }
          }
        }
      ]
    },
    "key_end": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_key_end_tag"
          },
          "named": true,
          "value": "block_end_tag"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "snippet_statement": {
      "type": "SEQ",
      "members": [
        {
          "type": "SYMBOL",
          "name": "snippet_start"
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_node"
          }
        },
        {
          "type": "SYMBOL",
          "name": "snippet_end"
        }
      ]
    },
    "_snippet_start_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "#"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "snippet"
            }
          }
        }
      ]
    },
    "snippet_start": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_snippet_start_tag"
          },
          "named": true,
          "value": "block_start_tag"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "PATTERN",
            "value": "[a-zA-Z$_][a-zA-Z0-9_]*"
          },
          "named": true,
          "value": "snippet_name"
        },
        {
          "type": "STRING",
          "value": "("
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "ALIAS",
              "content": {
                "type": "SYMBOL",
                "name": "svelte_raw_text_snippet_arguments"
              },
              "named": true,
              "value": "svelte_raw_text"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "STRING",
          "value": ")"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "_snippet_end_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "/"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "snippet"
            }
          }
        }
      ]
    },
    "snippet_end": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_snippet_end_tag"
          },
          "named": true,
          "value": "block_end_tag"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "expression": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "SYMBOL",
          "name": "svelte_raw_text"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "_tag_value": {
      "type": "SEQ",
      "members": [
        {
          "type": "PATTERN",
          "value": "\\s+"
        },
        {
          "type": "SYMBOL",
          "name": "svelte_raw_text"
        }
      ]
    },
    "_html_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "@"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "html"
            }
          }
        }
      ]
    },
    "html_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_html_tag"
          },
          "named": true,
          "value": "expression_tag"
        },
        {
          "type": "SYMBOL",
          "name": "_tag_value"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "_const_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "@"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "const"
            }
          }
        }
      ]
    },
    "const_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_const_tag"
          },
          "named": true,
          "value": "expression_tag"
        },
        {
          "type": "SYMBOL",
          "name": "_tag_value"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "_debug_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "@"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "debug"
            }
          }
        }
      ]
    },
    "debug_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_debug_tag"
          },
          "named": true,
          "value": "expression_tag"
        },
        {
          "type": "SYMBOL",
          "name": "_tag_value"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    },
    "_render_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "@"
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "IMMEDIATE_TOKEN",
            "content": {
              "type": "STRING",
              "value": "render"
            }
          }
        }
      ]
    },
    "render_tag": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "{"
        },
        {
          "type": "ALIAS",
          "content": {
            "type": "SYMBOL",
            "name": "_render_tag"
          },
          "named": true,
          "value": "expression_tag"
        },
        {
          "type": "SYMBOL",
          "name": "_tag_value"
        },
        {
          "type": "STRING",
          "value": "}"
        }
      ]
    }
  },
  "extras": [
    {
      "type": "SYMBOL",
      "name": "comment"
    },
    {
      "type": "PATTERN",
      "value": "\\s+"
    }
  ],
  "conflicts": [
    [
      "else_if_block"
    ],
    [
      "else_block"
    ],
    [
      "then_block"
    ],
    [
      "catch_block"
    ]
  ],
  "precedences": [],
  "externals": [
    {
      "type": "SYMBOL",
      "name": "_start_tag_name"
    },
    {
      "type": "SYMBOL",
      "name": "_script_start_tag_name"
    },
    {
      "type": "SYMBOL",
      "name": "_style_start_tag_name"
    },
    {
      "type": "SYMBOL",
      "name": "_end_tag_name"
    },
    {
      "type": "SYMBOL",
      "name": "erroneous_end_tag_name"
    },
    {
      "type": "STRING",
      "value": "/>"
    },
    {
      "type": "SYMBOL",
      "name": "_implicit_end_tag"
    },
    {
      "type": "SYMBOL",
      "name": "raw_text"
    },
    {
      "type": "SYMBOL",
      "name": "comment"
    },
    {
      "type": "SYMBOL",
      "name": "svelte_raw_text"
    },
    {
      "type": "SYMBOL",
      "name": "svelte_raw_text_each"
    },
    {
      "type": "SYMBOL",
      "name": "svelte_raw_text_snippet_arguments"
    },
    {
      "type": "STRING",
      "value": "@"
    },
    {
      "type": "STRING",
      "value": "#"
    },
    {
      "type": "STRING",
      "value": "/"
    },
    {
      "type": "STRING",
      "value": ":"
    }
  ],
  "inline": [],
  "supertypes": [
    "_node"
  ]
}
