[
  {
    "type": "additive_argument_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "additive_argument_expression",
          "named": true
        },
        {
          "type": "multiplicative_argument_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "additive_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "additive_expression",
          "named": true
        },
        {
          "type": "multiplicative_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "argument_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "logical_argument_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "argument_expression_list",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "argument_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "argument_list",
    "named": true,
    "fields": {
      "argument_expression_list": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "argument_expression_list",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "array_expression",
    "named": true,
    "fields": {
      "statements": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "statement_list",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "array_literal_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "array_literal_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "array_type_name",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "type_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "assignement_operator",
    "named": true,
    "fields": {}
  },
  {
    "type": "assignment_expression",
    "named": true,
    "fields": {
      "value": {
        "multiple": true,
        "required": true,
        "types": [
          {
            "type": "class_statement",
            "named": true
          },
          {
            "type": "data_statement",
            "named": true
          },
          {
            "type": "do_statement",
            "named": true
          },
          {
            "type": "empty_statement",
            "named": true
          },
          {
            "type": "enum_statement",
            "named": true
          },
          {
            "type": "flow_control_statement",
            "named": true
          },
          {
            "type": "for_statement",
            "named": true
          },
          {
            "type": "foreach_statement",
            "named": true
          },
          {
            "type": "function_statement",
            "named": true
          },
          {
            "type": "if_statement",
            "named": true
          },
          {
            "type": "inlinescript_statement",
            "named": true
          },
          {
            "type": "label",
            "named": true
          },
          {
            "type": "parallel_statement",
            "named": true
          },
          {
            "type": "pipeline",
            "named": true
          },
          {
            "type": "sequence_statement",
            "named": true
          },
          {
            "type": "switch_statement",
            "named": true
          },
          {
            "type": "trap_statement",
            "named": true
          },
          {
            "type": "try_statement",
            "named": true
          },
          {
            "type": "while_statement",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "assignement_operator",
          "named": true
        },
        {
          "type": "left_assignment_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "attribute",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "attribute_arguments",
          "named": true
        },
        {
          "type": "attribute_name",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        }
      ]
    }
  },
  {
    "type": "attribute_argument",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "logical_expression",
          "named": true
        },
        {
          "type": "simple_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "attribute_arguments",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "attribute_argument",
          "named": true
        }
      ]
    }
  },
  {
    "type": "attribute_list",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "attribute",
          "named": true
        }
      ]
    }
  },
  {
    "type": "attribute_name",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "type_spec",
          "named": true
        }
      ]
    }
  },
  {
    "type": "bitwise_argument_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "bitwise_argument_expression",
          "named": true
        },
        {
          "type": "comparison_argument_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "bitwise_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "bitwise_expression",
          "named": true
        },
        {
          "type": "comparison_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "block_name",
    "named": true,
    "fields": {}
  },
  {
    "type": "cast_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "catch_clause",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "catch_type_list",
          "named": true
        },
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "catch_clauses",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "catch_clause",
          "named": true
        }
      ]
    }
  },
  {
    "type": "catch_type_list",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "type_literal",
          "named": true
        }
      ]
    }
  },
  {
    "type": "class_attribute",
    "named": true,
    "fields": {}
  },
  {
    "type": "class_method_definition",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "attribute",
          "named": true
        },
        {
          "type": "class_attribute",
          "named": true
        },
        {
          "type": "class_method_parameter_list",
          "named": true
        },
        {
          "type": "script_block",
          "named": true
        },
        {
          "type": "simple_name",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        }
      ]
    }
  },
  {
    "type": "class_method_parameter",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "class_method_parameter_list",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "class_method_parameter",
          "named": true
        }
      ]
    }
  },
  {
    "type": "class_property_definition",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "attribute",
          "named": true
        },
        {
          "type": "class_attribute",
          "named": true
        },
        {
          "type": "logical_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "class_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "class_method_definition",
          "named": true
        },
        {
          "type": "class_property_definition",
          "named": true
        },
        {
          "type": "simple_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "command",
    "named": true,
    "fields": {
      "command_elements": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "command_elements",
            "named": true
          }
        ]
      },
      "command_name": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "command_name",
            "named": true
          },
          {
            "type": "command_name_expr",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "command_invokation_operator",
          "named": true
        },
        {
          "type": "foreach_command",
          "named": true
        }
      ]
    }
  },
  {
    "type": "command_argument_sep",
    "named": true,
    "fields": {}
  },
  {
    "type": "command_elements",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "command_argument_sep",
          "named": true
        },
        {
          "type": "command_parameter",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "generic_token",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "redirection",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "stop_parsing",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "command_invokation_operator",
    "named": true,
    "fields": {}
  },
  {
    "type": "command_name",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "command_name_expr",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "command_name",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "path_command_name",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "comparison_argument_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "additive_argument_expression",
          "named": true
        },
        {
          "type": "comparison_argument_expression",
          "named": true
        },
        {
          "type": "comparison_operator",
          "named": true
        }
      ]
    }
  },
  {
    "type": "comparison_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "additive_expression",
          "named": true
        },
        {
          "type": "comparison_expression",
          "named": true
        },
        {
          "type": "comparison_operator",
          "named": true
        }
      ]
    }
  },
  {
    "type": "comparison_operator",
    "named": true,
    "fields": {}
  },
  {
    "type": "data_command",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "command_name_expr",
          "named": true
        }
      ]
    }
  },
  {
    "type": "data_commands_allowed",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "data_commands_list",
          "named": true
        }
      ]
    }
  },
  {
    "type": "data_commands_list",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "data_command",
          "named": true
        }
      ]
    }
  },
  {
    "type": "data_name",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "simple_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "data_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "data_commands_allowed",
          "named": true
        },
        {
          "type": "data_name",
          "named": true
        },
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "dimension",
    "named": true,
    "fields": {}
  },
  {
    "type": "do_statement",
    "named": true,
    "fields": {
      "condition": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "while_condition",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "element_access",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "logical_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "else_clause",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "elseif_clause",
    "named": true,
    "fields": {
      "condition": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "pipeline",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "elseif_clauses",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "elseif_clause",
          "named": true
        }
      ]
    }
  },
  {
    "type": "empty_statement",
    "named": true,
    "fields": {}
  },
  {
    "type": "enum_member",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "simple_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "enum_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "enum_member",
          "named": true
        },
        {
          "type": "simple_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "expandable_here_string_literal",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "expandable_string_literal",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "expression_with_unary_operator",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "cast_expression",
          "named": true
        },
        {
          "type": "pre_decrement_expression",
          "named": true
        },
        {
          "type": "pre_increment_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "file_redirection_operator",
    "named": true,
    "fields": {}
  },
  {
    "type": "finally_clause",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "flow_control_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "label_expression",
          "named": true
        },
        {
          "type": "pipeline",
          "named": true
        }
      ]
    }
  },
  {
    "type": "for_condition",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "pipeline",
          "named": true
        }
      ]
    }
  },
  {
    "type": "for_initializer",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "pipeline",
          "named": true
        }
      ]
    }
  },
  {
    "type": "for_iterator",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "pipeline",
          "named": true
        }
      ]
    }
  },
  {
    "type": "for_statement",
    "named": true,
    "fields": {
      "for_condition": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "for_condition",
            "named": true
          }
        ]
      },
      "for_initializer": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "for_initializer",
            "named": true
          }
        ]
      },
      "for_iterator": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "for_iterator",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "foreach_command",
    "named": true,
    "fields": {
      "command_elements": {
        "multiple": true,
        "required": true,
        "types": [
          {
            "type": "script_block_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "foreach_parameter",
    "named": true,
    "fields": {}
  },
  {
    "type": "foreach_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "foreach_parameter",
          "named": true
        },
        {
          "type": "pipeline",
          "named": true
        },
        {
          "type": "statement_block",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "format_argument_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "format_argument_expression",
          "named": true
        },
        {
          "type": "format_operator",
          "named": true
        },
        {
          "type": "range_argument_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "format_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "format_expression",
          "named": true
        },
        {
          "type": "format_operator",
          "named": true
        },
        {
          "type": "range_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "function_name",
    "named": true,
    "fields": {}
  },
  {
    "type": "function_parameter_declaration",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "parameter_list",
          "named": true
        }
      ]
    }
  },
  {
    "type": "function_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "function_name",
          "named": true
        },
        {
          "type": "function_parameter_declaration",
          "named": true
        },
        {
          "type": "script_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "generic_type_arguments",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "type_spec",
          "named": true
        }
      ]
    }
  },
  {
    "type": "generic_type_name",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "type_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "hash_entry",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "class_statement",
          "named": true
        },
        {
          "type": "data_statement",
          "named": true
        },
        {
          "type": "do_statement",
          "named": true
        },
        {
          "type": "empty_statement",
          "named": true
        },
        {
          "type": "enum_statement",
          "named": true
        },
        {
          "type": "flow_control_statement",
          "named": true
        },
        {
          "type": "for_statement",
          "named": true
        },
        {
          "type": "foreach_statement",
          "named": true
        },
        {
          "type": "function_statement",
          "named": true
        },
        {
          "type": "if_statement",
          "named": true
        },
        {
          "type": "inlinescript_statement",
          "named": true
        },
        {
          "type": "key_expression",
          "named": true
        },
        {
          "type": "label",
          "named": true
        },
        {
          "type": "parallel_statement",
          "named": true
        },
        {
          "type": "pipeline",
          "named": true
        },
        {
          "type": "sequence_statement",
          "named": true
        },
        {
          "type": "switch_statement",
          "named": true
        },
        {
          "type": "trap_statement",
          "named": true
        },
        {
          "type": "try_statement",
          "named": true
        },
        {
          "type": "while_statement",
          "named": true
        }
      ]
    }
  },
  {
    "type": "hash_literal_body",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "hash_entry",
          "named": true
        }
      ]
    }
  },
  {
    "type": "hash_literal_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "hash_literal_body",
          "named": true
        }
      ]
    }
  },
  {
    "type": "if_statement",
    "named": true,
    "fields": {
      "condition": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "pipeline",
            "named": true
          }
        ]
      },
      "else_clause": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "else_clause",
            "named": true
          }
        ]
      },
      "elseif_clauses": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "elseif_clauses",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "inlinescript_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "integer_literal",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "decimal_integer_literal",
          "named": true
        },
        {
          "type": "hexadecimal_integer_literal",
          "named": true
        }
      ]
    }
  },
  {
    "type": "invokation_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "argument_list",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "invokation_foreach_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "member_name",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "invokation_foreach_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "key_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "simple_name",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "label_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "label",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "left_assignment_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "logical_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "logical_argument_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "bitwise_argument_expression",
          "named": true
        },
        {
          "type": "logical_argument_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "logical_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "bitwise_expression",
          "named": true
        },
        {
          "type": "logical_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "member_access",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "member_name",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "member_name",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "expression_with_unary_operator",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "simple_name",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "merging_redirection_operator",
    "named": true,
    "fields": {}
  },
  {
    "type": "multiplicative_argument_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "format_argument_expression",
          "named": true
        },
        {
          "type": "multiplicative_argument_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "multiplicative_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "format_expression",
          "named": true
        },
        {
          "type": "multiplicative_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "named_block",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "block_name",
          "named": true
        },
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "named_block_list",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "named_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "parallel_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "param_block",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "attribute_list",
          "named": true
        },
        {
          "type": "parameter_list",
          "named": true
        }
      ]
    }
  },
  {
    "type": "parameter_list",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "script_parameter",
          "named": true
        }
      ]
    }
  },
  {
    "type": "parenthesized_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "pipeline",
          "named": true
        }
      ]
    }
  },
  {
    "type": "path_command_name",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "path_command_name_token",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "pipeline",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "command",
          "named": true
        },
        {
          "type": "logical_expression",
          "named": true
        },
        {
          "type": "redirections",
          "named": true
        },
        {
          "type": "verbatim_command_argument",
          "named": true
        }
      ]
    }
  },
  {
    "type": "post_decrement_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "post_increment_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "pre_decrement_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "pre_increment_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "program",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "param_block",
          "named": true
        },
        {
          "type": "statement_list",
          "named": true
        }
      ]
    }
  },
  {
    "type": "range_argument_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "range_argument_expression",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "range_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "array_literal_expression",
          "named": true
        },
        {
          "type": "range_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "redirected_file_name",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "command_argument_sep",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "generic_token",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "redirection",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "file_redirection_operator",
          "named": true
        },
        {
          "type": "merging_redirection_operator",
          "named": true
        },
        {
          "type": "redirected_file_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "redirections",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "redirection",
          "named": true
        }
      ]
    }
  },
  {
    "type": "script_block",
    "named": true,
    "fields": {
      "script_block_body": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "script_block_body",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "param_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "script_block_body",
    "named": true,
    "fields": {
      "named_block_list": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "named_block_list",
            "named": true
          }
        ]
      },
      "statement_list": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "statement_list",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "script_block_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "param_block",
          "named": true
        },
        {
          "type": "script_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "script_parameter",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "attribute_list",
          "named": true
        },
        {
          "type": "script_parameter_default",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "script_parameter_default",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "logical_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "sequence_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "statement_block",
    "named": true,
    "fields": {
      "statement_list": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "statement_list",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "statement_list",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "class_statement",
          "named": true
        },
        {
          "type": "data_statement",
          "named": true
        },
        {
          "type": "do_statement",
          "named": true
        },
        {
          "type": "empty_statement",
          "named": true
        },
        {
          "type": "enum_statement",
          "named": true
        },
        {
          "type": "flow_control_statement",
          "named": true
        },
        {
          "type": "for_statement",
          "named": true
        },
        {
          "type": "foreach_statement",
          "named": true
        },
        {
          "type": "function_statement",
          "named": true
        },
        {
          "type": "if_statement",
          "named": true
        },
        {
          "type": "inlinescript_statement",
          "named": true
        },
        {
          "type": "label",
          "named": true
        },
        {
          "type": "parallel_statement",
          "named": true
        },
        {
          "type": "pipeline",
          "named": true
        },
        {
          "type": "sequence_statement",
          "named": true
        },
        {
          "type": "switch_statement",
          "named": true
        },
        {
          "type": "trap_statement",
          "named": true
        },
        {
          "type": "try_statement",
          "named": true
        },
        {
          "type": "while_statement",
          "named": true
        }
      ]
    }
  },
  {
    "type": "string_literal",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "expandable_here_string_literal",
          "named": true
        },
        {
          "type": "expandable_string_literal",
          "named": true
        },
        {
          "type": "verbatim_here_string_characters",
          "named": true
        },
        {
          "type": "verbatim_string_characters",
          "named": true
        }
      ]
    }
  },
  {
    "type": "sub_expression",
    "named": true,
    "fields": {
      "statements": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "statement_list",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "switch_body",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "switch_clauses",
          "named": true
        }
      ]
    }
  },
  {
    "type": "switch_clause",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        },
        {
          "type": "switch_clause_condition",
          "named": true
        }
      ]
    }
  },
  {
    "type": "switch_clause_condition",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "switch_clauses",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "switch_clause",
          "named": true
        }
      ]
    }
  },
  {
    "type": "switch_condition",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "pipeline",
          "named": true
        },
        {
          "type": "switch_filename",
          "named": true
        }
      ]
    }
  },
  {
    "type": "switch_filename",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "switch_parameter",
    "named": true,
    "fields": {}
  },
  {
    "type": "switch_parameters",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "switch_parameter",
          "named": true
        }
      ]
    }
  },
  {
    "type": "switch_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "switch_body",
          "named": true
        },
        {
          "type": "switch_condition",
          "named": true
        },
        {
          "type": "switch_parameters",
          "named": true
        }
      ]
    }
  },
  {
    "type": "trap_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        }
      ]
    }
  },
  {
    "type": "try_statement",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "catch_clauses",
          "named": true
        },
        {
          "type": "finally_clause",
          "named": true
        },
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "type_literal",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "type_spec",
          "named": true
        }
      ]
    }
  },
  {
    "type": "type_name",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "type_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "type_spec",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "array_type_name",
          "named": true
        },
        {
          "type": "dimension",
          "named": true
        },
        {
          "type": "generic_type_arguments",
          "named": true
        },
        {
          "type": "generic_type_name",
          "named": true
        },
        {
          "type": "type_name",
          "named": true
        }
      ]
    }
  },
  {
    "type": "unary_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "element_access",
          "named": true
        },
        {
          "type": "expression_with_unary_operator",
          "named": true
        },
        {
          "type": "hash_literal_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "invokation_expression",
          "named": true
        },
        {
          "type": "member_access",
          "named": true
        },
        {
          "type": "parenthesized_expression",
          "named": true
        },
        {
          "type": "post_decrement_expression",
          "named": true
        },
        {
          "type": "post_increment_expression",
          "named": true
        },
        {
          "type": "real_literal",
          "named": true
        },
        {
          "type": "script_block_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "sub_expression",
          "named": true
        },
        {
          "type": "type_literal",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "variable",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "braced_variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "verbatim_command_argument",
    "named": true,
    "fields": {}
  },
  {
    "type": "while_condition",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "pipeline",
          "named": true
        }
      ]
    }
  },
  {
    "type": "while_statement",
    "named": true,
    "fields": {
      "condition": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "while_condition",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "statement_block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "\n",
    "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": "*>&1",
    "named": false
  },
  {
    "type": "*>&2",
    "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": "-and",
    "named": false
  },
  {
    "type": "-as",
    "named": false
  },
  {
    "type": "-band",
    "named": false
  },
  {
    "type": "-bnot",
    "named": false
  },
  {
    "type": "-bor",
    "named": false
  },
  {
    "type": "-bxor",
    "named": false
  },
  {
    "type": "-casesensitive",
    "named": false
  },
  {
    "type": "-ccontains",
    "named": false
  },
  {
    "type": "-ceq",
    "named": false
  },
  {
    "type": "-cge",
    "named": false
  },
  {
    "type": "-cgt",
    "named": false
  },
  {
    "type": "-cle",
    "named": false
  },
  {
    "type": "-clike",
    "named": false
  },
  {
    "type": "-clt",
    "named": false
  },
  {
    "type": "-cmatch",
    "named": false
  },
  {
    "type": "-cne",
    "named": false
  },
  {
    "type": "-cnotcontains",
    "named": false
  },
  {
    "type": "-cnotlike",
    "named": false
  },
  {
    "type": "-cnotmatch",
    "named": false
  },
  {
    "type": "-contains",
    "named": false
  },
  {
    "type": "-creplace",
    "named": false
  },
  {
    "type": "-csplit",
    "named": false
  },
  {
    "type": "-eq",
    "named": false
  },
  {
    "type": "-exact",
    "named": false
  },
  {
    "type": "-file",
    "named": false
  },
  {
    "type": "-ge",
    "named": false
  },
  {
    "type": "-gt",
    "named": false
  },
  {
    "type": "-icontains",
    "named": false
  },
  {
    "type": "-ieq",
    "named": false
  },
  {
    "type": "-ige",
    "named": false
  },
  {
    "type": "-igt",
    "named": false
  },
  {
    "type": "-ile",
    "named": false
  },
  {
    "type": "-ilike",
    "named": false
  },
  {
    "type": "-ilt",
    "named": false
  },
  {
    "type": "-imatch",
    "named": false
  },
  {
    "type": "-in",
    "named": false
  },
  {
    "type": "-ine",
    "named": false
  },
  {
    "type": "-inotcontains",
    "named": false
  },
  {
    "type": "-inotlike",
    "named": false
  },
  {
    "type": "-inotmatch",
    "named": false
  },
  {
    "type": "-ireplace",
    "named": false
  },
  {
    "type": "-is",
    "named": false
  },
  {
    "type": "-isnot",
    "named": false
  },
  {
    "type": "-isplit",
    "named": false
  },
  {
    "type": "-join",
    "named": false
  },
  {
    "type": "-le",
    "named": false
  },
  {
    "type": "-like",
    "named": false
  },
  {
    "type": "-lt",
    "named": false
  },
  {
    "type": "-match",
    "named": false
  },
  {
    "type": "-ne",
    "named": false
  },
  {
    "type": "-not",
    "named": false
  },
  {
    "type": "-notcontains",
    "named": false
  },
  {
    "type": "-notin",
    "named": false
  },
  {
    "type": "-notlike",
    "named": false
  },
  {
    "type": "-notmatch",
    "named": false
  },
  {
    "type": "-or",
    "named": false
  },
  {
    "type": "-parallel",
    "named": false
  },
  {
    "type": "-regex",
    "named": false
  },
  {
    "type": "-replace",
    "named": false
  },
  {
    "type": "-shl",
    "named": false
  },
  {
    "type": "-shr",
    "named": false
  },
  {
    "type": "-split",
    "named": false
  },
  {
    "type": "-supportedcommand",
    "named": false
  },
  {
    "type": "-wildcard",
    "named": false
  },
  {
    "type": "-xor",
    "named": false
  },
  {
    "type": ".",
    "named": false
  },
  {
    "type": "..",
    "named": false
  },
  {
    "type": ".foreach",
    "named": false
  },
  {
    "type": "/",
    "named": false
  },
  {
    "type": "/=",
    "named": false
  },
  {
    "type": "1>&2",
    "named": false
  },
  {
    "type": "2>",
    "named": false
  },
  {
    "type": "2>&1",
    "named": false
  },
  {
    "type": "2>>",
    "named": false
  },
  {
    "type": "3>",
    "named": false
  },
  {
    "type": "3>&1",
    "named": false
  },
  {
    "type": "3>&2",
    "named": false
  },
  {
    "type": "3>>",
    "named": false
  },
  {
    "type": "4>",
    "named": false
  },
  {
    "type": "4>&1",
    "named": false
  },
  {
    "type": "4>&2",
    "named": false
  },
  {
    "type": "4>>",
    "named": false
  },
  {
    "type": "5>",
    "named": false
  },
  {
    "type": "5>&1",
    "named": false
  },
  {
    "type": "5>&2",
    "named": false
  },
  {
    "type": "5>>",
    "named": false
  },
  {
    "type": "6>",
    "named": false
  },
  {
    "type": "6>&1",
    "named": false
  },
  {
    "type": "6>&2",
    "named": false
  },
  {
    "type": "6>>",
    "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": "begin",
    "named": false
  },
  {
    "type": "braced_variable",
    "named": true
  },
  {
    "type": "break",
    "named": false
  },
  {
    "type": "catch",
    "named": false
  },
  {
    "type": "class",
    "named": false
  },
  {
    "type": "command_parameter",
    "named": true
  },
  {
    "type": "comment",
    "named": true
  },
  {
    "type": "continue",
    "named": false
  },
  {
    "type": "data",
    "named": false
  },
  {
    "type": "decimal_integer_literal",
    "named": true
  },
  {
    "type": "do",
    "named": false
  },
  {
    "type": "dynamicparam",
    "named": false
  },
  {
    "type": "else",
    "named": false
  },
  {
    "type": "elseif",
    "named": false
  },
  {
    "type": "end",
    "named": false
  },
  {
    "type": "enum",
    "named": false
  },
  {
    "type": "exit",
    "named": false
  },
  {
    "type": "filter",
    "named": false
  },
  {
    "type": "finally",
    "named": false
  },
  {
    "type": "for",
    "named": false
  },
  {
    "type": "foreach",
    "named": false
  },
  {
    "type": "foreach-object",
    "named": false
  },
  {
    "type": "format_operator",
    "named": true
  },
  {
    "type": "function",
    "named": false
  },
  {
    "type": "generic_token",
    "named": true
  },
  {
    "type": "hexadecimal_integer_literal",
    "named": true
  },
  {
    "type": "hidden",
    "named": false
  },
  {
    "type": "if",
    "named": false
  },
  {
    "type": "in",
    "named": false
  },
  {
    "type": "inlinescript",
    "named": false
  },
  {
    "type": "label",
    "named": true
  },
  {
    "type": "parallel",
    "named": false
  },
  {
    "type": "param",
    "named": false
  },
  {
    "type": "path_command_name_token",
    "named": true
  },
  {
    "type": "process",
    "named": false
  },
  {
    "type": "real_literal",
    "named": true
  },
  {
    "type": "return",
    "named": false
  },
  {
    "type": "sequence",
    "named": false
  },
  {
    "type": "simple_name",
    "named": true
  },
  {
    "type": "static",
    "named": false
  },
  {
    "type": "stop_parsing",
    "named": true
  },
  {
    "type": "switch",
    "named": false
  },
  {
    "type": "throw",
    "named": false
  },
  {
    "type": "trap",
    "named": false
  },
  {
    "type": "try",
    "named": false
  },
  {
    "type": "type_identifier",
    "named": true
  },
  {
    "type": "until",
    "named": false
  },
  {
    "type": "verbatim_here_string_characters",
    "named": true
  },
  {
    "type": "verbatim_string_characters",
    "named": true
  },
  {
    "type": "while",
    "named": false
  },
  {
    "type": "workflow",
    "named": false
  },
  {
    "type": "{",
    "named": false
  },
  {
    "type": "|",
    "named": false
  },
  {
    "type": "}",
    "named": false
  }
]