[
  {
    "type": "assign",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "assign_equals",
          "named": true
        },
        {
          "type": "assign_source",
          "named": true
        },
        {
          "type": "assign_to",
          "named": true
        }
      ]
    }
  },
  {
    "type": "assign_source",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "definition",
          "named": true
        }
      ]
    }
  },
  {
    "type": "assign_to",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "definition_assignable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "block",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "block_end",
          "named": true
        },
        {
          "type": "block_start",
          "named": true
        },
        {
          "type": "definition",
          "named": true
        }
      ]
    }
  },
  {
    "type": "chain",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "chain_dot",
          "named": true
        },
        {
          "type": "definition_in_chain",
          "named": true
        }
      ]
    }
  },
  {
    "type": "definition",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "assign",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "chain",
          "named": true
        },
        {
          "type": "func",
          "named": true
        },
        {
          "type": "if",
          "named": true
        },
        {
          "type": "init",
          "named": true
        },
        {
          "type": "number",
          "named": true
        },
        {
          "type": "string",
          "named": true
        },
        {
          "type": "tuple",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "definition_assignable",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "block",
          "named": true
        },
        {
          "type": "number",
          "named": true
        },
        {
          "type": "string",
          "named": true
        },
        {
          "type": "tuple",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "definition_in_chain",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "block",
          "named": true
        },
        {
          "type": "number",
          "named": true
        },
        {
          "type": "string",
          "named": true
        },
        {
          "type": "tuple",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "definition_initable",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "tuple",
          "named": true
        },
        {
          "type": "variable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "func",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "func_arg",
          "named": true
        },
        {
          "type": "func_arrow",
          "named": true
        },
        {
          "type": "func_body",
          "named": true
        }
      ]
    }
  },
  {
    "type": "func_arg",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "definition_assignable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "func_body",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "definition",
          "named": true
        }
      ]
    }
  },
  {
    "type": "if",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "definition",
          "named": true
        },
        {
          "type": "if_else",
          "named": true
        },
        {
          "type": "if_if",
          "named": true
        }
      ]
    }
  },
  {
    "type": "init",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "init_colonequals",
          "named": true
        },
        {
          "type": "init_source",
          "named": true
        },
        {
          "type": "init_to",
          "named": true
        }
      ]
    }
  },
  {
    "type": "init_source",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "definition",
          "named": true
        }
      ]
    }
  },
  {
    "type": "init_to",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "definition_initable",
          "named": true
        }
      ]
    }
  },
  {
    "type": "source_file",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "definition",
          "named": true
        }
      ]
    }
  },
  {
    "type": "string",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "string_content",
          "named": true
        }
      ]
    }
  },
  {
    "type": "tuple",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "definition",
          "named": true
        },
        {
          "type": "tuple_end",
          "named": true
        },
        {
          "type": "tuple_separator",
          "named": true
        },
        {
          "type": "tuple_start",
          "named": true
        }
      ]
    }
  },
  {
    "type": "\"",
    "named": false
  },
  {
    "type": "assign_equals",
    "named": true
  },
  {
    "type": "block_end",
    "named": true
  },
  {
    "type": "block_start",
    "named": true
  },
  {
    "type": "chain_dot",
    "named": true
  },
  {
    "type": "func_arrow",
    "named": true
  },
  {
    "type": "if_else",
    "named": true
  },
  {
    "type": "if_if",
    "named": true
  },
  {
    "type": "init_colonequals",
    "named": true
  },
  {
    "type": "number",
    "named": true
  },
  {
    "type": "string_content",
    "named": true
  },
  {
    "type": "tuple_end",
    "named": true
  },
  {
    "type": "tuple_separator",
    "named": true
  },
  {
    "type": "tuple_start",
    "named": true
  },
  {
    "type": "variable",
    "named": true
  }
]