[
  {
    "type": "animation_binding",
    "named": true,
    "fields": {
      "trigger": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "\"",
            "named": false
          },
          {
            "type": ";",
            "named": false
          },
          {
            "type": "=",
            "named": false
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "conditional_expression",
            "named": true
          },
          {
            "type": "expression",
            "named": true
          },
          {
            "type": "nullish_coalescing_expression",
            "named": true
          },
          {
            "type": "template_string",
            "named": true
          },
          {
            "type": "ternary_expression",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "binding_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "arguments",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "array",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "bracket_expression",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "group",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "member_expression",
          "named": true
        },
        {
          "type": "number",
          "named": true
        },
        {
          "type": "object",
          "named": true
        },
        {
          "type": "string",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "array",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "assignment_expression",
    "named": true,
    "fields": {
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "conditional_expression",
            "named": true
          },
          {
            "type": "expression",
            "named": true
          },
          {
            "type": "nullish_coalescing_expression",
            "named": true
          },
          {
            "type": "template_string",
            "named": true
          },
          {
            "type": "ternary_expression",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "attribute",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "animation_binding",
          "named": true
        },
        {
          "type": "attribute_name",
          "named": true
        },
        {
          "type": "attribute_value",
          "named": true
        },
        {
          "type": "event_binding",
          "named": true
        },
        {
          "type": "property_binding",
          "named": true
        },
        {
          "type": "quoted_attribute_value",
          "named": true
        },
        {
          "type": "structural_directive",
          "named": true
        },
        {
          "type": "two_way_binding",
          "named": true
        }
      ]
    }
  },
  {
    "type": "binary_expression",
    "named": true,
    "fields": {
      "left": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "expression",
            "named": true
          }
        ]
      },
      "operator": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "!=",
            "named": false
          },
          {
            "type": "!==",
            "named": false
          },
          {
            "type": "%",
            "named": false
          },
          {
            "type": "&&",
            "named": false
          },
          {
            "type": "*",
            "named": false
          },
          {
            "type": "+",
            "named": false
          },
          {
            "type": "-",
            "named": false
          },
          {
            "type": "/",
            "named": false
          },
          {
            "type": "<",
            "named": false
          },
          {
            "type": "<=",
            "named": false
          },
          {
            "type": "==",
            "named": false
          },
          {
            "type": "===",
            "named": false
          },
          {
            "type": ">",
            "named": false
          },
          {
            "type": ">=",
            "named": false
          },
          {
            "type": "||",
            "named": false
          }
        ]
      },
      "right": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "binding_name",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "member_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "bracket_expression",
    "named": true,
    "fields": {
      "object": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array",
            "named": true
          },
          {
            "type": "bracket_expression",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "group",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "member_expression",
            "named": true
          },
          {
            "type": "number",
            "named": true
          },
          {
            "type": "object",
            "named": true
          },
          {
            "type": "string",
            "named": true
          }
        ]
      },
      "property": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "static_member_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "call_expression",
    "named": true,
    "fields": {
      "arguments": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "arguments",
            "named": true
          }
        ]
      },
      "function": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "case_statement",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "statement_block",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array",
            "named": true
          },
          {
            "type": "bracket_expression",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "group",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "member_expression",
            "named": true
          },
          {
            "type": "number",
            "named": true
          },
          {
            "type": "object",
            "named": true
          },
          {
            "type": "string",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "concatenation_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "array",
          "named": true
        },
        {
          "type": "bracket_expression",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "expression",
          "named": true
        },
        {
          "type": "group",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "member_expression",
          "named": true
        },
        {
          "type": "number",
          "named": true
        },
        {
          "type": "object",
          "named": true
        },
        {
          "type": "string",
          "named": true
        }
      ]
    }
  },
  {
    "type": "conditional_expression",
    "named": true,
    "fields": {
      "left": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "bracket_expression",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "group",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "member_expression",
            "named": true
          },
          {
            "type": "number",
            "named": true
          },
          {
            "type": "object",
            "named": true
          },
          {
            "type": "string",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          }
        ]
      },
      "right": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "bracket_expression",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "conditional_expression",
            "named": true
          },
          {
            "type": "group",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "member_expression",
            "named": true
          },
          {
            "type": "number",
            "named": true
          },
          {
            "type": "object",
            "named": true
          },
          {
            "type": "string",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "conditional_operator",
          "named": true
        }
      ]
    }
  },
  {
    "type": "default_statement",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "statement_block",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "defer_statement",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "statement_block",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        },
        {
          "type": "defer_trigger",
          "named": true
        }
      ]
    }
  },
  {
    "type": "defer_trigger",
    "named": true,
    "fields": {
      "condition": {
        "multiple": true,
        "required": true,
        "types": [
          {
            "type": "defer_trigger_condition",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "defer_trigger_condition",
    "named": true,
    "fields": {
      "trigger": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "bracket_expression",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "conditional_expression",
            "named": true
          },
          {
            "type": "expression",
            "named": true
          },
          {
            "type": "group",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "member_expression",
            "named": true
          },
          {
            "type": "nullish_coalescing_expression",
            "named": true
          },
          {
            "type": "number",
            "named": true
          },
          {
            "type": "object",
            "named": true
          },
          {
            "type": "string",
            "named": true
          },
          {
            "type": "template_string",
            "named": true
          },
          {
            "type": "ternary_expression",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "prefetch_keyword",
          "named": true
        },
        {
          "type": "special_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "doctype",
    "named": true,
    "fields": {}
  },
  {
    "type": "document",
    "named": true,
    "fields": {
      "alternative": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "else_statement",
            "named": true
          }
        ]
      },
      "alternative_condition": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "else_if_statement",
            "named": true
          }
        ]
      },
      "empty": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "empty_statement",
            "named": true
          }
        ]
      },
      "error": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "error_statement",
            "named": true
          }
        ]
      },
      "loading": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "loading_statement",
            "named": true
          }
        ]
      },
      "placeholder": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "placeholder_statement",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "defer_statement",
          "named": true
        },
        {
          "type": "doctype",
          "named": true
        },
        {
          "type": "element",
          "named": true
        },
        {
          "type": "entity",
          "named": true
        },
        {
          "type": "erroneous_end_tag",
          "named": true
        },
        {
          "type": "for_statement",
          "named": true
        },
        {
          "type": "icu_expression",
          "named": true
        },
        {
          "type": "if_statement",
          "named": true
        },
        {
          "type": "interpolation",
          "named": true
        },
        {
          "type": "let_statement",
          "named": true
        },
        {
          "type": "script_element",
          "named": true
        },
        {
          "type": "style_element",
          "named": true
        },
        {
          "type": "switch_statement",
          "named": true
        },
        {
          "type": "text",
          "named": true
        }
      ]
    }
  },
  {
    "type": "element",
    "named": true,
    "fields": {
      "alternative": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "else_statement",
            "named": true
          }
        ]
      },
      "alternative_condition": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "else_if_statement",
            "named": true
          }
        ]
      },
      "empty": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "empty_statement",
            "named": true
          }
        ]
      },
      "error": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "error_statement",
            "named": true
          }
        ]
      },
      "loading": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "loading_statement",
            "named": true
          }
        ]
      },
      "placeholder": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "placeholder_statement",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "defer_statement",
          "named": true
        },
        {
          "type": "doctype",
          "named": true
        },
        {
          "type": "element",
          "named": true
        },
        {
          "type": "end_tag",
          "named": true
        },
        {
          "type": "entity",
          "named": true
        },
        {
          "type": "erroneous_end_tag",
          "named": true
        },
        {
          "type": "for_statement",
          "named": true
        },
        {
          "type": "icu_expression",
          "named": true
        },
        {
          "type": "if_statement",
          "named": true
        },
        {
          "type": "interpolation",
          "named": true
        },
        {
          "type": "let_statement",
          "named": true
        },
        {
          "type": "script_element",
          "named": true
        },
        {
          "type": "self_closing_tag",
          "named": true
        },
        {
          "type": "start_tag",
          "named": true
        },
        {
          "type": "style_element",
          "named": true
        },
        {
          "type": "switch_statement",
          "named": true
        },
        {
          "type": "text",
          "named": true
        }
      ]
    }
  },
  {
    "type": "else_if_statement",
    "named": true,
    "fields": {
      "condition": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "if_condition",
            "named": true
          }
        ]
      },
      "consequence": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "statement_block",
            "named": true
          }
        ]
      },
      "reference": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "if_reference",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "else_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        },
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "empty_statement",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "statement_block",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "end_tag",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "tag_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "erroneous_end_tag",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "erroneous_end_tag_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "error_statement",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "statement_block",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "event_binding",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "binding_name",
          "named": true
        },
        {
          "type": "conditional_expression",
          "named": true
        },
        {
          "type": "expression",
          "named": true
        },
        {
          "type": "nullish_coalescing_expression",
          "named": true
        },
        {
          "type": "template_string",
          "named": true
        },
        {
          "type": "ternary_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "expression",
    "named": true,
    "fields": {
      "pipes": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "pipe_sequence",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "array",
          "named": true
        },
        {
          "type": "bracket_expression",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "group",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "member_expression",
          "named": true
        },
        {
          "type": "number",
          "named": true
        },
        {
          "type": "object",
          "named": true
        },
        {
          "type": "string",
          "named": true
        }
      ]
    }
  },
  {
    "type": "for_declaration",
    "named": true,
    "fields": {
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      },
      "track": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "expression",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "expression",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "special_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "for_reference",
    "named": true,
    "fields": {
      "alias": {
        "multiple": true,
        "required": true,
        "types": [
          {
            "type": "assignment_expression",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "special_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "for_statement",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "statement_block",
            "named": true
          }
        ]
      },
      "declaration": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "for_declaration",
            "named": true
          }
        ]
      },
      "reference": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "for_reference",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "group",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "conditional_expression",
          "named": true
        },
        {
          "type": "expression",
          "named": true
        },
        {
          "type": "nullish_coalescing_expression",
          "named": true
        },
        {
          "type": "template_string",
          "named": true
        },
        {
          "type": "ternary_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "icu_case",
    "named": true,
    "fields": {
      "alternative": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "else_statement",
            "named": true
          }
        ]
      },
      "alternative_condition": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "else_if_statement",
            "named": true
          }
        ]
      },
      "empty": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "empty_statement",
            "named": true
          }
        ]
      },
      "error": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "error_statement",
            "named": true
          }
        ]
      },
      "loading": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "loading_statement",
            "named": true
          }
        ]
      },
      "placeholder": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "placeholder_statement",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "defer_statement",
          "named": true
        },
        {
          "type": "doctype",
          "named": true
        },
        {
          "type": "element",
          "named": true
        },
        {
          "type": "entity",
          "named": true
        },
        {
          "type": "erroneous_end_tag",
          "named": true
        },
        {
          "type": "for_statement",
          "named": true
        },
        {
          "type": "icu_category",
          "named": true
        },
        {
          "type": "icu_expression",
          "named": true
        },
        {
          "type": "if_statement",
          "named": true
        },
        {
          "type": "interpolation",
          "named": true
        },
        {
          "type": "let_statement",
          "named": true
        },
        {
          "type": "script_element",
          "named": true
        },
        {
          "type": "style_element",
          "named": true
        },
        {
          "type": "switch_statement",
          "named": true
        },
        {
          "type": "text",
          "named": true
        }
      ]
    }
  },
  {
    "type": "icu_clause",
    "named": true,
    "fields": {}
  },
  {
    "type": "icu_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "concatenation_expression",
          "named": true
        },
        {
          "type": "conditional_expression",
          "named": true
        },
        {
          "type": "expression",
          "named": true
        },
        {
          "type": "icu_case",
          "named": true
        },
        {
          "type": "icu_clause",
          "named": true
        },
        {
          "type": "nullish_coalescing_expression",
          "named": true
        },
        {
          "type": "template_string",
          "named": true
        },
        {
          "type": "ternary_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "if_condition",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "conditional_expression",
          "named": true
        },
        {
          "type": "expression",
          "named": true
        },
        {
          "type": "nullish_coalescing_expression",
          "named": true
        },
        {
          "type": "template_string",
          "named": true
        },
        {
          "type": "ternary_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "if_reference",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "special_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "if_statement",
    "named": true,
    "fields": {
      "condition": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "if_condition",
            "named": true
          }
        ]
      },
      "consequence": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "statement_block",
            "named": true
          }
        ]
      },
      "reference": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "if_reference",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "interpolation",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "concatenation_expression",
          "named": true
        },
        {
          "type": "conditional_expression",
          "named": true
        },
        {
          "type": "expression",
          "named": true
        },
        {
          "type": "nullish_coalescing_expression",
          "named": true
        },
        {
          "type": "template_string",
          "named": true
        },
        {
          "type": "ternary_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "let_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "control_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "loading_condition",
    "named": true,
    "fields": {
      "condition": {
        "multiple": true,
        "required": true,
        "types": [
          {
            "type": "timed_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "loading_statement",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "statement_block",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        },
        {
          "type": "loading_condition",
          "named": true
        }
      ]
    }
  },
  {
    "type": "member_expression",
    "named": true,
    "fields": {
      "call": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "call_expression",
            "named": true
          }
        ]
      },
      "object": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array",
            "named": true
          },
          {
            "type": "bracket_expression",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "group",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "member_expression",
            "named": true
          },
          {
            "type": "number",
            "named": true
          },
          {
            "type": "object",
            "named": true
          },
          {
            "type": "string",
            "named": true
          }
        ]
      },
      "property": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "nullish_coalescing_expression",
    "named": true,
    "fields": {
      "condition": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "conditional_expression",
            "named": true
          },
          {
            "type": "expression",
            "named": true
          },
          {
            "type": "nullish_coalescing_expression",
            "named": true
          },
          {
            "type": "template_string",
            "named": true
          },
          {
            "type": "ternary_expression",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          }
        ]
      },
      "default": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array",
            "named": true
          },
          {
            "type": "bracket_expression",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "group",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "member_expression",
            "named": true
          },
          {
            "type": "number",
            "named": true
          },
          {
            "type": "object",
            "named": true
          },
          {
            "type": "string",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "coalescing_operator",
          "named": true
        }
      ]
    }
  },
  {
    "type": "object",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "pair",
          "named": true
        }
      ]
    }
  },
  {
    "type": "pair",
    "named": true,
    "fields": {
      "key": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "string",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "conditional_expression",
            "named": true
          },
          {
            "type": "expression",
            "named": true
          },
          {
            "type": "nullish_coalescing_expression",
            "named": true
          },
          {
            "type": "template_string",
            "named": true
          },
          {
            "type": "ternary_expression",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "pipe_arguments",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "array",
          "named": true
        },
        {
          "type": "bracket_expression",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "group",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "member_expression",
          "named": true
        },
        {
          "type": "number",
          "named": true
        },
        {
          "type": "object",
          "named": true
        },
        {
          "type": "string",
          "named": true
        }
      ]
    }
  },
  {
    "type": "pipe_call",
    "named": true,
    "fields": {
      "arguments": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "pipe_arguments",
            "named": true
          }
        ]
      },
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "pipe_sequence",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "pipe_call",
          "named": true
        },
        {
          "type": "pipe_operator",
          "named": true
        }
      ]
    }
  },
  {
    "type": "placeholder_minimum",
    "named": true,
    "fields": {
      "minimum": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "timed_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "placeholder_statement",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "statement_block",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        },
        {
          "type": "placeholder_minimum",
          "named": true
        }
      ]
    }
  },
  {
    "type": "property_binding",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "binding_name",
          "named": true
        },
        {
          "type": "conditional_expression",
          "named": true
        },
        {
          "type": "expression",
          "named": true
        },
        {
          "type": "nullish_coalescing_expression",
          "named": true
        },
        {
          "type": "template_string",
          "named": true
        },
        {
          "type": "ternary_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "quoted_attribute_value",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "attribute_value",
          "named": true
        }
      ]
    }
  },
  {
    "type": "script_element",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "end_tag",
          "named": true
        },
        {
          "type": "raw_text",
          "named": true
        },
        {
          "type": "start_tag",
          "named": true
        }
      ]
    }
  },
  {
    "type": "self_closing_tag",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "attribute",
          "named": true
        },
        {
          "type": "tag_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "start_tag",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "attribute",
          "named": true
        },
        {
          "type": "tag_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "statement_block",
    "named": true,
    "fields": {
      "alternative": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "else_statement",
            "named": true
          }
        ]
      },
      "alternative_condition": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "else_if_statement",
            "named": true
          }
        ]
      },
      "empty": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "empty_statement",
            "named": true
          }
        ]
      },
      "error": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "error_statement",
            "named": true
          }
        ]
      },
      "loading": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "loading_statement",
            "named": true
          }
        ]
      },
      "placeholder": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "placeholder_statement",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "defer_statement",
          "named": true
        },
        {
          "type": "doctype",
          "named": true
        },
        {
          "type": "element",
          "named": true
        },
        {
          "type": "entity",
          "named": true
        },
        {
          "type": "erroneous_end_tag",
          "named": true
        },
        {
          "type": "for_statement",
          "named": true
        },
        {
          "type": "icu_expression",
          "named": true
        },
        {
          "type": "if_statement",
          "named": true
        },
        {
          "type": "interpolation",
          "named": true
        },
        {
          "type": "let_statement",
          "named": true
        },
        {
          "type": "script_element",
          "named": true
        },
        {
          "type": "style_element",
          "named": true
        },
        {
          "type": "switch_statement",
          "named": true
        },
        {
          "type": "text",
          "named": true
        }
      ]
    }
  },
  {
    "type": "static_member_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "identifier",
          "named": true
        }
      ]
    }
  },
  {
    "type": "string",
    "named": true,
    "fields": {}
  },
  {
    "type": "structural_assignment",
    "named": true,
    "fields": {
      "alias": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      },
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      },
      "operator": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "=",
            "named": false
          },
          {
            "type": "identifier",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "special_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "structural_declaration",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "special_keyword",
          "named": true
        },
        {
          "type": "structural_assignment",
          "named": true
        }
      ]
    }
  },
  {
    "type": "structural_directive",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "structural_declaration",
          "named": true
        },
        {
          "type": "structural_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "structural_expression",
    "named": true,
    "fields": {
      "alias": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      },
      "named": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "conditional_expression",
          "named": true
        },
        {
          "type": "expression",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "nullish_coalescing_expression",
          "named": true
        },
        {
          "type": "special_keyword",
          "named": true
        },
        {
          "type": "template_string",
          "named": true
        },
        {
          "type": "ternary_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "style_element",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "end_tag",
          "named": true
        },
        {
          "type": "raw_text",
          "named": true
        },
        {
          "type": "start_tag",
          "named": true
        }
      ]
    }
  },
  {
    "type": "switch_body",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "case_statement",
          "named": true
        },
        {
          "type": "default_statement",
          "named": true
        }
      ]
    }
  },
  {
    "type": "switch_statement",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "switch_body",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "expression",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "control_keyword",
          "named": true
        }
      ]
    }
  },
  {
    "type": "template_string",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "template_chars",
          "named": true
        },
        {
          "type": "template_substitution",
          "named": true
        }
      ]
    }
  },
  {
    "type": "template_substitution",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "conditional_expression",
          "named": true
        },
        {
          "type": "expression",
          "named": true
        },
        {
          "type": "nullish_coalescing_expression",
          "named": true
        },
        {
          "type": "template_string",
          "named": true
        },
        {
          "type": "ternary_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "ternary_expression",
    "named": true,
    "fields": {
      "alternative": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "conditional_expression",
            "named": true
          },
          {
            "type": "expression",
            "named": true
          },
          {
            "type": "group",
            "named": true
          },
          {
            "type": "nullish_coalescing_expression",
            "named": true
          },
          {
            "type": "template_string",
            "named": true
          },
          {
            "type": "ternary_expression",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          }
        ]
      },
      "condition": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "conditional_expression",
            "named": true
          },
          {
            "type": "expression",
            "named": true
          },
          {
            "type": "nullish_coalescing_expression",
            "named": true
          },
          {
            "type": "template_string",
            "named": true
          },
          {
            "type": "ternary_expression",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          }
        ]
      },
      "consequence": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array",
            "named": true
          },
          {
            "type": "bracket_expression",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "group",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "member_expression",
            "named": true
          },
          {
            "type": "number",
            "named": true
          },
          {
            "type": "object",
            "named": true
          },
          {
            "type": "string",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "ternary_operator",
          "named": true
        }
      ]
    }
  },
  {
    "type": "timed_expression",
    "named": true,
    "fields": {
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "number",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "special_keyword",
          "named": true
        },
        {
          "type": "unit",
          "named": true
        }
      ]
    }
  },
  {
    "type": "two_way_binding",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "binding_name",
          "named": true
        },
        {
          "type": "conditional_expression",
          "named": true
        },
        {
          "type": "expression",
          "named": true
        },
        {
          "type": "nullish_coalescing_expression",
          "named": true
        },
        {
          "type": "template_string",
          "named": true
        },
        {
          "type": "ternary_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "unary_expression",
    "named": true,
    "fields": {
      "operator": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "unary_operator",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "!.",
    "named": false
  },
  {
    "type": "!=",
    "named": false
  },
  {
    "type": "!==",
    "named": false
  },
  {
    "type": "\"",
    "named": false
  },
  {
    "type": "${",
    "named": false
  },
  {
    "type": "%",
    "named": false
  },
  {
    "type": "&&",
    "named": false
  },
  {
    "type": "'",
    "named": false
  },
  {
    "type": "(",
    "named": false
  },
  {
    "type": ")",
    "named": false
  },
  {
    "type": ")]",
    "named": false
  },
  {
    "type": "*",
    "named": false
  },
  {
    "type": "+",
    "named": false
  },
  {
    "type": ",",
    "named": false
  },
  {
    "type": "-",
    "named": false
  },
  {
    "type": ".",
    "named": false
  },
  {
    "type": "/",
    "named": false
  },
  {
    "type": "/>",
    "named": false
  },
  {
    "type": ":",
    "named": false
  },
  {
    "type": ";",
    "named": false
  },
  {
    "type": "<",
    "named": false
  },
  {
    "type": "<!",
    "named": false
  },
  {
    "type": "</",
    "named": false
  },
  {
    "type": "<=",
    "named": false
  },
  {
    "type": "=",
    "named": false
  },
  {
    "type": "==",
    "named": false
  },
  {
    "type": "===",
    "named": false
  },
  {
    "type": ">",
    "named": false
  },
  {
    "type": ">=",
    "named": false
  },
  {
    "type": "?.",
    "named": false
  },
  {
    "type": "@",
    "named": false
  },
  {
    "type": "[",
    "named": false
  },
  {
    "type": "[(",
    "named": false
  },
  {
    "type": "[@",
    "named": false
  },
  {
    "type": "]",
    "named": false
  },
  {
    "type": "attribute_name",
    "named": true
  },
  {
    "type": "attribute_value",
    "named": true
  },
  {
    "type": "coalescing_operator",
    "named": true
  },
  {
    "type": "comment",
    "named": true
  },
  {
    "type": "conditional_operator",
    "named": true
  },
  {
    "type": "control_keyword",
    "named": true
  },
  {
    "type": "doctype",
    "named": false
  },
  {
    "type": "entity",
    "named": true
  },
  {
    "type": "erroneous_end_tag_name",
    "named": true
  },
  {
    "type": "icu_category",
    "named": true
  },
  {
    "type": "identifier",
    "named": true
  },
  {
    "type": "number",
    "named": true
  },
  {
    "type": "pipe_operator",
    "named": true
  },
  {
    "type": "plural",
    "named": false
  },
  {
    "type": "prefetch_keyword",
    "named": true
  },
  {
    "type": "raw_text",
    "named": true
  },
  {
    "type": "select",
    "named": false
  },
  {
    "type": "special_keyword",
    "named": true
  },
  {
    "type": "tag_name",
    "named": true
  },
  {
    "type": "template_chars",
    "named": true
  },
  {
    "type": "ternary_operator",
    "named": true
  },
  {
    "type": "text",
    "named": true
  },
  {
    "type": "unary_operator",
    "named": true
  },
  {
    "type": "unit",
    "named": true
  },
  {
    "type": "{",
    "named": false
  },
  {
    "type": "{{",
    "named": false
  },
  {
    "type": "||",
    "named": false
  },
  {
    "type": "}",
    "named": false
  },
  {
    "type": "}}",
    "named": false
  }
]