{
  "type": "File",
  "start": 0,
  "end": 6969,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 208,
      "column": 1
    }
  },
  "program": {
    "type": "Program",
    "start": 0,
    "end": 6969,
    "loc": {
      "start": {
        "line": 1,
        "column": 0
      },
      "end": {
        "line": 208,
        "column": 1
      }
    },
    "sourceType": "module",
    "body": [
      {
        "type": "ImportDeclaration",
        "start": 0,
        "end": 44,
        "loc": {
          "start": {
            "line": 1,
            "column": 0
          },
          "end": {
            "line": 1,
            "column": 44
          }
        },
        "specifiers": [
          {
            "type": "ImportDefaultSpecifier",
            "start": 7,
            "end": 17,
            "loc": {
              "start": {
                "line": 1,
                "column": 7
              },
              "end": {
                "line": 1,
                "column": 17
              }
            },
            "local": {
              "type": "Identifier",
              "start": 7,
              "end": 17,
              "loc": {
                "start": {
                  "line": 1,
                  "column": 7
                },
                "end": {
                  "line": 1,
                  "column": 17
                },
                "identifierName": "Updateable"
              },
              "name": "Updateable"
            }
          }
        ],
        "source": {
          "type": "StringLiteral",
          "start": 23,
          "end": 43,
          "loc": {
            "start": {
              "line": 1,
              "column": 23
            },
            "end": {
              "line": 1,
              "column": 43
            }
          },
          "extra": {
            "rawValue": "../base/Updateable",
            "raw": "'../base/Updateable'"
          },
          "value": "../base/Updateable"
        }
      },
      {
        "type": "ImportDeclaration",
        "start": 45,
        "end": 92,
        "loc": {
          "start": {
            "line": 2,
            "column": 0
          },
          "end": {
            "line": 2,
            "column": 47
          }
        },
        "specifiers": [
          {
            "type": "ImportDefaultSpecifier",
            "start": 52,
            "end": 61,
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 16
              }
            },
            "local": {
              "type": "Identifier",
              "start": 52,
              "end": 61,
              "loc": {
                "start": {
                  "line": 2,
                  "column": 7
                },
                "end": {
                  "line": 2,
                  "column": 16
                },
                "identifierName": "Component"
              },
              "name": "Component"
            }
          }
        ],
        "source": {
          "type": "StringLiteral",
          "start": 67,
          "end": 91,
          "loc": {
            "start": {
              "line": 2,
              "column": 22
            },
            "end": {
              "line": 2,
              "column": 46
            }
          },
          "extra": {
            "rawValue": "../component/Component",
            "raw": "'../component/Component'"
          },
          "value": "../component/Component"
        }
      },
      {
        "type": "ImportDeclaration",
        "start": 93,
        "end": 140,
        "loc": {
          "start": {
            "line": 3,
            "column": 0
          },
          "end": {
            "line": 3,
            "column": 47
          }
        },
        "specifiers": [
          {
            "type": "ImportDefaultSpecifier",
            "start": 100,
            "end": 109,
            "loc": {
              "start": {
                "line": 3,
                "column": 7
              },
              "end": {
                "line": 3,
                "column": 16
              }
            },
            "local": {
              "type": "Identifier",
              "start": 100,
              "end": 109,
              "loc": {
                "start": {
                  "line": 3,
                  "column": 7
                },
                "end": {
                  "line": 3,
                  "column": 16
                },
                "identifierName": "Transform"
              },
              "name": "Transform"
            }
          }
        ],
        "source": {
          "type": "StringLiteral",
          "start": 115,
          "end": 139,
          "loc": {
            "start": {
              "line": 3,
              "column": 22
            },
            "end": {
              "line": 3,
              "column": 46
            }
          },
          "extra": {
            "rawValue": "../component/Transform",
            "raw": "'../component/Transform'"
          },
          "value": "../component/Transform"
        },
        "trailingComments": [
          {
            "type": "CommentBlock",
            "value": "*\n * Baseclass GameObject which derives from Updateable.\n * \n * Do not derive this class directly! GameObjects are not managed until they are assigned to a manager.\n * Instead, derive SceneObject or PersistentObject to create objects that exist the scope of a scene, or the scope of the game.\n * \n * All objects that should exist in the game screen should derive this. \n ",
            "start": 142,
            "end": 517,
            "loc": {
              "start": {
                "line": 5,
                "column": 0
              },
              "end": {
                "line": 12,
                "column": 3
              }
            }
          }
        ]
      },
      {
        "type": "ExportDefaultDeclaration",
        "start": 518,
        "end": 6969,
        "loc": {
          "start": {
            "line": 13,
            "column": 0
          },
          "end": {
            "line": 208,
            "column": 1
          }
        },
        "declaration": {
          "type": "ClassDeclaration",
          "start": 533,
          "end": 6969,
          "loc": {
            "start": {
              "line": 13,
              "column": 15
            },
            "end": {
              "line": 208,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 539,
            "end": 549,
            "loc": {
              "start": {
                "line": 13,
                "column": 21
              },
              "end": {
                "line": 13,
                "column": 31
              },
              "identifierName": "GameObject"
            },
            "name": "GameObject",
            "leadingComments": null
          },
          "superClass": {
            "type": "Identifier",
            "start": 558,
            "end": 568,
            "loc": {
              "start": {
                "line": 13,
                "column": 40
              },
              "end": {
                "line": 13,
                "column": 50
              },
              "identifierName": "Updateable"
            },
            "name": "Updateable"
          },
          "body": {
            "type": "ClassBody",
            "start": 569,
            "end": 6969,
            "loc": {
              "start": {
                "line": 13,
                "column": 51
              },
              "end": {
                "line": 208,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ClassMethod",
                "start": 876,
                "end": 1181,
                "loc": {
                  "start": {
                    "line": 21,
                    "column": 4
                  },
                  "end": {
                    "line": 28,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 876,
                  "end": 887,
                  "loc": {
                    "start": {
                      "line": 21,
                      "column": 4
                    },
                    "end": {
                      "line": 21,
                      "column": 15
                    },
                    "identifierName": "constructor"
                  },
                  "name": "constructor",
                  "leadingComments": null
                },
                "kind": "constructor",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "AssignmentPattern",
                    "start": 888,
                    "end": 917,
                    "loc": {
                      "start": {
                        "line": 21,
                        "column": 16
                      },
                      "end": {
                        "line": 21,
                        "column": 45
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 888,
                      "end": 896,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 16
                        },
                        "end": {
                          "line": 21,
                          "column": 24
                        },
                        "identifierName": "position"
                      },
                      "name": "position"
                    },
                    "right": {
                      "type": "NewExpression",
                      "start": 899,
                      "end": 917,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 27
                        },
                        "end": {
                          "line": 21,
                          "column": 45
                        }
                      },
                      "callee": {
                        "type": "Identifier",
                        "start": 903,
                        "end": 908,
                        "loc": {
                          "start": {
                            "line": 21,
                            "column": 31
                          },
                          "end": {
                            "line": 21,
                            "column": 36
                          },
                          "identifierName": "Point"
                        },
                        "name": "Point"
                      },
                      "arguments": [
                        {
                          "type": "NumericLiteral",
                          "start": 909,
                          "end": 910,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 37
                            },
                            "end": {
                              "line": 21,
                              "column": 38
                            }
                          },
                          "extra": {
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "value": 0
                        },
                        {
                          "type": "NumericLiteral",
                          "start": 912,
                          "end": 913,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 40
                            },
                            "end": {
                              "line": 21,
                              "column": 41
                            }
                          },
                          "extra": {
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "value": 0
                        },
                        {
                          "type": "NumericLiteral",
                          "start": 915,
                          "end": 916,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 43
                            },
                            "end": {
                              "line": 21,
                              "column": 44
                            }
                          },
                          "extra": {
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "value": 0
                        }
                      ]
                    }
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 919,
                    "end": 946,
                    "loc": {
                      "start": {
                        "line": 21,
                        "column": 47
                      },
                      "end": {
                        "line": 21,
                        "column": 74
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 919,
                      "end": 923,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 47
                        },
                        "end": {
                          "line": 21,
                          "column": 51
                        },
                        "identifierName": "size"
                      },
                      "name": "size"
                    },
                    "right": {
                      "type": "NewExpression",
                      "start": 926,
                      "end": 946,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 54
                        },
                        "end": {
                          "line": 21,
                          "column": 74
                        }
                      },
                      "callee": {
                        "type": "Identifier",
                        "start": 930,
                        "end": 935,
                        "loc": {
                          "start": {
                            "line": 21,
                            "column": 58
                          },
                          "end": {
                            "line": 21,
                            "column": 63
                          },
                          "identifierName": "Point"
                        },
                        "name": "Point"
                      },
                      "arguments": [
                        {
                          "type": "NumericLiteral",
                          "start": 936,
                          "end": 938,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 64
                            },
                            "end": {
                              "line": 21,
                              "column": 66
                            }
                          },
                          "extra": {
                            "rawValue": 32,
                            "raw": "32"
                          },
                          "value": 32
                        },
                        {
                          "type": "NumericLiteral",
                          "start": 940,
                          "end": 942,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 68
                            },
                            "end": {
                              "line": 21,
                              "column": 70
                            }
                          },
                          "extra": {
                            "rawValue": 32,
                            "raw": "32"
                          },
                          "value": 32
                        },
                        {
                          "type": "NumericLiteral",
                          "start": 944,
                          "end": 945,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 72
                            },
                            "end": {
                              "line": 21,
                              "column": 73
                            }
                          },
                          "extra": {
                            "rawValue": 1,
                            "raw": "1"
                          },
                          "value": 1
                        }
                      ]
                    }
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 948,
                    "end": 960,
                    "loc": {
                      "start": {
                        "line": 21,
                        "column": 76
                      },
                      "end": {
                        "line": 21,
                        "column": 88
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 948,
                      "end": 956,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 76
                        },
                        "end": {
                          "line": 21,
                          "column": 84
                        },
                        "identifierName": "rotation"
                      },
                      "name": "rotation"
                    },
                    "right": {
                      "type": "NumericLiteral",
                      "start": 959,
                      "end": 960,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 87
                        },
                        "end": {
                          "line": 21,
                          "column": 88
                        }
                      },
                      "extra": {
                        "rawValue": 0,
                        "raw": "0"
                      },
                      "value": 0
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 962,
                  "end": 1181,
                  "loc": {
                    "start": {
                      "line": 21,
                      "column": 90
                    },
                    "end": {
                      "line": 28,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 972,
                      "end": 980,
                      "loc": {
                        "start": {
                          "line": 22,
                          "column": 8
                        },
                        "end": {
                          "line": 22,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 972,
                        "end": 979,
                        "loc": {
                          "start": {
                            "line": 22,
                            "column": 8
                          },
                          "end": {
                            "line": 22,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 972,
                          "end": 977,
                          "loc": {
                            "start": {
                              "line": 22,
                              "column": 8
                            },
                            "end": {
                              "line": 22,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 989,
                      "end": 1019,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 8
                        },
                        "end": {
                          "line": 23,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 989,
                        "end": 1018,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 8
                          },
                          "end": {
                            "line": 23,
                            "column": 37
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 989,
                          "end": 1003,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 8
                            },
                            "end": {
                              "line": 23,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 989,
                            "end": 993,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 8
                              },
                              "end": {
                                "line": 23,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 994,
                            "end": 1003,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 13
                              },
                              "end": {
                                "line": 23,
                                "column": 22
                              },
                              "identifierName": "className"
                            },
                            "name": "className"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 1006,
                          "end": 1018,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 25
                            },
                            "end": {
                              "line": 23,
                              "column": 37
                            }
                          },
                          "extra": {
                            "rawValue": "GameObject",
                            "raw": "'GameObject'"
                          },
                          "value": "GameObject"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1029,
                      "end": 1050,
                      "loc": {
                        "start": {
                          "line": 25,
                          "column": 8
                        },
                        "end": {
                          "line": 25,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1029,
                        "end": 1049,
                        "loc": {
                          "start": {
                            "line": 25,
                            "column": 8
                          },
                          "end": {
                            "line": 25,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1029,
                          "end": 1044,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 8
                            },
                            "end": {
                              "line": 25,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1029,
                            "end": 1033,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 8
                              },
                              "end": {
                                "line": 25,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1034,
                            "end": 1044,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 13
                              },
                              "end": {
                                "line": 25,
                                "column": 23
                              },
                              "identifierName": "components"
                            },
                            "name": "components"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ObjectExpression",
                          "start": 1047,
                          "end": 1049,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 26
                            },
                            "end": {
                              "line": 25,
                              "column": 28
                            }
                          },
                          "properties": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1059,
                      "end": 1118,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 8
                        },
                        "end": {
                          "line": 26,
                          "column": 67
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1059,
                        "end": 1117,
                        "loc": {
                          "start": {
                            "line": 26,
                            "column": 8
                          },
                          "end": {
                            "line": 26,
                            "column": 66
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 1059,
                          "end": 1076,
                          "loc": {
                            "start": {
                              "line": 26,
                              "column": 8
                            },
                            "end": {
                              "line": 26,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1059,
                            "end": 1063,
                            "loc": {
                              "start": {
                                "line": 26,
                                "column": 8
                              },
                              "end": {
                                "line": 26,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1064,
                            "end": 1076,
                            "loc": {
                              "start": {
                                "line": 26,
                                "column": 13
                              },
                              "end": {
                                "line": 26,
                                "column": 25
                              },
                              "identifierName": "addComponent"
                            },
                            "name": "addComponent"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "NewExpression",
                            "start": 1077,
                            "end": 1116,
                            "loc": {
                              "start": {
                                "line": 26,
                                "column": 26
                              },
                              "end": {
                                "line": 26,
                                "column": 65
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 1081,
                              "end": 1090,
                              "loc": {
                                "start": {
                                  "line": 26,
                                  "column": 30
                                },
                                "end": {
                                  "line": 26,
                                  "column": 39
                                },
                                "identifierName": "Transform"
                              },
                              "name": "Transform"
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 1091,
                                "end": 1099,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 48
                                  },
                                  "identifierName": "position"
                                },
                                "name": "position"
                              },
                              {
                                "type": "Identifier",
                                "start": 1101,
                                "end": 1105,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 54
                                  },
                                  "identifierName": "size"
                                },
                                "name": "size"
                              },
                              {
                                "type": "Identifier",
                                "start": 1107,
                                "end": 1115,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 64
                                  },
                                  "identifierName": "rotation"
                                },
                                "name": "rotation"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1127,
                      "end": 1175,
                      "loc": {
                        "start": {
                          "line": 27,
                          "column": 8
                        },
                        "end": {
                          "line": 27,
                          "column": 56
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1127,
                        "end": 1174,
                        "loc": {
                          "start": {
                            "line": 27,
                            "column": 8
                          },
                          "end": {
                            "line": 27,
                            "column": 55
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1127,
                          "end": 1141,
                          "loc": {
                            "start": {
                              "line": 27,
                              "column": 8
                            },
                            "end": {
                              "line": 27,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1127,
                            "end": 1131,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 8
                              },
                              "end": {
                                "line": 27,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1132,
                            "end": 1141,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 13
                              },
                              "end": {
                                "line": 27,
                                "column": 22
                              },
                              "identifierName": "transform"
                            },
                            "name": "transform"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 1144,
                          "end": 1174,
                          "loc": {
                            "start": {
                              "line": 27,
                              "column": 25
                            },
                            "end": {
                              "line": 27,
                              "column": 55
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1144,
                            "end": 1161,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 25
                              },
                              "end": {
                                "line": 27,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1144,
                              "end": 1148,
                              "loc": {
                                "start": {
                                  "line": 27,
                                  "column": 25
                                },
                                "end": {
                                  "line": 27,
                                  "column": 29
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1149,
                              "end": 1161,
                              "loc": {
                                "start": {
                                  "line": 27,
                                  "column": 30
                                },
                                "end": {
                                  "line": 27,
                                  "column": 42
                                },
                                "identifierName": "getComponent"
                              },
                              "name": "getComponent"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "StringLiteral",
                              "start": 1162,
                              "end": 1173,
                              "loc": {
                                "start": {
                                  "line": 27,
                                  "column": 43
                                },
                                "end": {
                                  "line": 27,
                                  "column": 54
                                }
                              },
                              "extra": {
                                "rawValue": "Transform",
                                "raw": "\"Transform\""
                              },
                              "value": "Transform"
                            }
                          ]
                        }
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Default position, size and rotation of the Object.\n     * \n     * @param {Point} position A point of creation in the world.\n     * @param {Point} size A point representing scale of the object.\n     * @param {number} rotation A number representing angular rotation (in degrees).\n     ",
                    "start": 575,
                    "end": 871,
                    "loc": {
                      "start": {
                        "line": 14,
                        "column": 4
                      },
                      "end": {
                        "line": 20,
                        "column": 7
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Adds a component to this game object, and keeps reference to it.\n     * GameObjects will handle their components as they are added to the object.\n     * \n     * @param {Component} component The component assigned to this object.\n     ",
                    "start": 1187,
                    "end": 1434,
                    "loc": {
                      "start": {
                        "line": 30,
                        "column": 4
                      },
                      "end": {
                        "line": 35,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 1439,
                "end": 1985,
                "loc": {
                  "start": {
                    "line": 36,
                    "column": 4
                  },
                  "end": {
                    "line": 48,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 1439,
                  "end": 1451,
                  "loc": {
                    "start": {
                      "line": 36,
                      "column": 4
                    },
                    "end": {
                      "line": 36,
                      "column": 16
                    },
                    "identifierName": "addComponent"
                  },
                  "name": "addComponent",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 1452,
                    "end": 1461,
                    "loc": {
                      "start": {
                        "line": 36,
                        "column": 17
                      },
                      "end": {
                        "line": 36,
                        "column": 26
                      },
                      "identifierName": "component"
                    },
                    "name": "component"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 1463,
                  "end": 1985,
                  "loc": {
                    "start": {
                      "line": 36,
                      "column": 28
                    },
                    "end": {
                      "line": 48,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 1473,
                      "end": 1589,
                      "loc": {
                        "start": {
                          "line": 37,
                          "column": 8
                        },
                        "end": {
                          "line": 39,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 1477,
                        "end": 1521,
                        "loc": {
                          "start": {
                            "line": 37,
                            "column": 12
                          },
                          "end": {
                            "line": 37,
                            "column": 56
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 1477,
                          "end": 1513,
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 12
                            },
                            "end": {
                              "line": 37,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1477,
                            "end": 1492,
                            "loc": {
                              "start": {
                                "line": 37,
                                "column": 12
                              },
                              "end": {
                                "line": 37,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1477,
                              "end": 1481,
                              "loc": {
                                "start": {
                                  "line": 37,
                                  "column": 12
                                },
                                "end": {
                                  "line": 37,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1482,
                              "end": 1492,
                              "loc": {
                                "start": {
                                  "line": 37,
                                  "column": 17
                                },
                                "end": {
                                  "line": 37,
                                  "column": 27
                                },
                                "identifierName": "components"
                              },
                              "name": "components"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "MemberExpression",
                            "start": 1493,
                            "end": 1512,
                            "loc": {
                              "start": {
                                "line": 37,
                                "column": 28
                              },
                              "end": {
                                "line": 37,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1493,
                              "end": 1502,
                              "loc": {
                                "start": {
                                  "line": 37,
                                  "column": 28
                                },
                                "end": {
                                  "line": 37,
                                  "column": 37
                                },
                                "identifierName": "component"
                              },
                              "name": "component"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1503,
                              "end": 1512,
                              "loc": {
                                "start": {
                                  "line": 37,
                                  "column": 38
                                },
                                "end": {
                                  "line": 37,
                                  "column": 47
                                },
                                "identifierName": "className"
                              },
                              "name": "className"
                            },
                            "computed": false
                          },
                          "computed": true
                        },
                        "operator": "==",
                        "right": {
                          "type": "NullLiteral",
                          "start": 1517,
                          "end": 1521,
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 52
                            },
                            "end": {
                              "line": 37,
                              "column": 56
                            }
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 1523,
                        "end": 1589,
                        "loc": {
                          "start": {
                            "line": 37,
                            "column": 58
                          },
                          "end": {
                            "line": 39,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 1537,
                            "end": 1579,
                            "loc": {
                              "start": {
                                "line": 38,
                                "column": 12
                              },
                              "end": {
                                "line": 38,
                                "column": 54
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1537,
                              "end": 1578,
                              "loc": {
                                "start": {
                                  "line": 38,
                                  "column": 12
                                },
                                "end": {
                                  "line": 38,
                                  "column": 53
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 1537,
                                "end": 1573,
                                "loc": {
                                  "start": {
                                    "line": 38,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 38,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 1537,
                                  "end": 1552,
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 1537,
                                    "end": 1541,
                                    "loc": {
                                      "start": {
                                        "line": 38,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 38,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1542,
                                    "end": 1552,
                                    "loc": {
                                      "start": {
                                        "line": 38,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 38,
                                        "column": 27
                                      },
                                      "identifierName": "components"
                                    },
                                    "name": "components"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "MemberExpression",
                                  "start": 1553,
                                  "end": 1572,
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 1553,
                                    "end": 1562,
                                    "loc": {
                                      "start": {
                                        "line": 38,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 38,
                                        "column": 37
                                      },
                                      "identifierName": "component"
                                    },
                                    "name": "component"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1563,
                                    "end": 1572,
                                    "loc": {
                                      "start": {
                                        "line": 38,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 38,
                                        "column": 47
                                      },
                                      "identifierName": "className"
                                    },
                                    "name": "className"
                                  },
                                  "computed": false
                                },
                                "computed": true
                              },
                              "right": {
                                "type": "ArrayExpression",
                                "start": 1576,
                                "end": 1578,
                                "loc": {
                                  "start": {
                                    "line": 38,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 38,
                                    "column": 53
                                  }
                                },
                                "elements": []
                              }
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 1598,
                      "end": 1823,
                      "loc": {
                        "start": {
                          "line": 40,
                          "column": 8
                        },
                        "end": {
                          "line": 43,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 1602,
                        "end": 1671,
                        "loc": {
                          "start": {
                            "line": 40,
                            "column": 12
                          },
                          "end": {
                            "line": 40,
                            "column": 81
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 1602,
                          "end": 1620,
                          "loc": {
                            "start": {
                              "line": 40,
                              "column": 12
                            },
                            "end": {
                              "line": 40,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1602,
                            "end": 1611,
                            "loc": {
                              "start": {
                                "line": 40,
                                "column": 12
                              },
                              "end": {
                                "line": 40,
                                "column": 21
                              },
                              "identifierName": "component"
                            },
                            "name": "component"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1612,
                            "end": 1620,
                            "loc": {
                              "start": {
                                "line": 40,
                                "column": 22
                              },
                              "end": {
                                "line": 40,
                                "column": 30
                              },
                              "identifierName": "isUnique"
                            },
                            "name": "isUnique"
                          },
                          "computed": false
                        },
                        "operator": "&&",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 1624,
                          "end": 1671,
                          "loc": {
                            "start": {
                              "line": 40,
                              "column": 34
                            },
                            "end": {
                              "line": 40,
                              "column": 81
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 1624,
                            "end": 1667,
                            "loc": {
                              "start": {
                                "line": 40,
                                "column": 34
                              },
                              "end": {
                                "line": 40,
                                "column": 77
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 1624,
                              "end": 1660,
                              "loc": {
                                "start": {
                                  "line": 40,
                                  "column": 34
                                },
                                "end": {
                                  "line": 40,
                                  "column": 70
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 1624,
                                "end": 1639,
                                "loc": {
                                  "start": {
                                    "line": 40,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 40,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 1624,
                                  "end": 1628,
                                  "loc": {
                                    "start": {
                                      "line": 40,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 40,
                                      "column": 38
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1629,
                                  "end": 1639,
                                  "loc": {
                                    "start": {
                                      "line": 40,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 40,
                                      "column": 49
                                    },
                                    "identifierName": "components"
                                  },
                                  "name": "components"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "MemberExpression",
                                "start": 1640,
                                "end": 1659,
                                "loc": {
                                  "start": {
                                    "line": 40,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 40,
                                    "column": 69
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1640,
                                  "end": 1649,
                                  "loc": {
                                    "start": {
                                      "line": 40,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 40,
                                      "column": 59
                                    },
                                    "identifierName": "component"
                                  },
                                  "name": "component"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1650,
                                  "end": 1659,
                                  "loc": {
                                    "start": {
                                      "line": 40,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 40,
                                      "column": 69
                                    },
                                    "identifierName": "className"
                                  },
                                  "name": "className"
                                },
                                "computed": false
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1661,
                              "end": 1667,
                              "loc": {
                                "start": {
                                  "line": 40,
                                  "column": 71
                                },
                                "end": {
                                  "line": 40,
                                  "column": 77
                                },
                                "identifierName": "length"
                              },
                              "name": "length"
                            },
                            "computed": false
                          },
                          "operator": ">",
                          "right": {
                            "type": "NumericLiteral",
                            "start": 1670,
                            "end": 1671,
                            "loc": {
                              "start": {
                                "line": 40,
                                "column": 80
                              },
                              "end": {
                                "line": 40,
                                "column": 81
                              }
                            },
                            "extra": {
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "value": 0
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 1673,
                        "end": 1823,
                        "loc": {
                          "start": {
                            "line": 40,
                            "column": 83
                          },
                          "end": {
                            "line": 43,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ThrowStatement",
                            "start": 1687,
                            "end": 1787,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 12
                              },
                              "end": {
                                "line": 41,
                                "column": 112
                              }
                            },
                            "argument": {
                              "type": "BinaryExpression",
                              "start": 1693,
                              "end": 1786,
                              "loc": {
                                "start": {
                                  "line": 41,
                                  "column": 18
                                },
                                "end": {
                                  "line": 41,
                                  "column": 111
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 1693,
                                "end": 1761,
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 86
                                  }
                                },
                                "left": {
                                  "type": "StringLiteral",
                                  "start": 1693,
                                  "end": 1739,
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 64
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "There is already a unique component of type ",
                                    "raw": "'There is already a unique component of type '"
                                  },
                                  "value": "There is already a unique component of type "
                                },
                                "operator": "+",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 1742,
                                  "end": 1761,
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 86
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 1742,
                                    "end": 1751,
                                    "loc": {
                                      "start": {
                                        "line": 41,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 41,
                                        "column": 76
                                      },
                                      "identifierName": "component"
                                    },
                                    "name": "component"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1752,
                                    "end": 1761,
                                    "loc": {
                                      "start": {
                                        "line": 41,
                                        "column": 77
                                      },
                                      "end": {
                                        "line": 41,
                                        "column": 86
                                      },
                                      "identifierName": "className"
                                    },
                                    "name": "className"
                                  },
                                  "computed": false
                                }
                              },
                              "operator": "+",
                              "right": {
                                "type": "StringLiteral",
                                "start": 1764,
                                "end": 1786,
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 89
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 111
                                  }
                                },
                                "extra": {
                                  "rawValue": " on this GameObject!",
                                  "raw": "' on this GameObject!'"
                                },
                                "value": " on this GameObject!"
                              }
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 1800,
                            "end": 1813,
                            "loc": {
                              "start": {
                                "line": 42,
                                "column": 12
                              },
                              "end": {
                                "line": 42,
                                "column": 25
                              }
                            },
                            "argument": {
                              "type": "BooleanLiteral",
                              "start": 1807,
                              "end": 1812,
                              "loc": {
                                "start": {
                                  "line": 42,
                                  "column": 19
                                },
                                "end": {
                                  "line": 42,
                                  "column": 24
                                }
                              },
                              "value": false
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1832,
                      "end": 1885,
                      "loc": {
                        "start": {
                          "line": 44,
                          "column": 8
                        },
                        "end": {
                          "line": 44,
                          "column": 61
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1832,
                        "end": 1884,
                        "loc": {
                          "start": {
                            "line": 44,
                            "column": 8
                          },
                          "end": {
                            "line": 44,
                            "column": 60
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 1832,
                          "end": 1873,
                          "loc": {
                            "start": {
                              "line": 44,
                              "column": 8
                            },
                            "end": {
                              "line": 44,
                              "column": 49
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1832,
                            "end": 1868,
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 8
                              },
                              "end": {
                                "line": 44,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 1832,
                              "end": 1847,
                              "loc": {
                                "start": {
                                  "line": 44,
                                  "column": 8
                                },
                                "end": {
                                  "line": 44,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 1832,
                                "end": 1836,
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1837,
                                "end": 1847,
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 23
                                  },
                                  "identifierName": "components"
                                },
                                "name": "components"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "MemberExpression",
                              "start": 1848,
                              "end": 1867,
                              "loc": {
                                "start": {
                                  "line": 44,
                                  "column": 24
                                },
                                "end": {
                                  "line": 44,
                                  "column": 43
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1848,
                                "end": 1857,
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 33
                                  },
                                  "identifierName": "component"
                                },
                                "name": "component"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1858,
                                "end": 1867,
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 43
                                  },
                                  "identifierName": "className"
                                },
                                "name": "className"
                              },
                              "computed": false
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1869,
                            "end": 1873,
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 45
                              },
                              "end": {
                                "line": 44,
                                "column": 49
                              },
                              "identifierName": "push"
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 1874,
                            "end": 1883,
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 50
                              },
                              "end": {
                                "line": 44,
                                "column": 59
                              },
                              "identifierName": "component"
                            },
                            "name": "component"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1894,
                      "end": 1922,
                      "loc": {
                        "start": {
                          "line": 45,
                          "column": 8
                        },
                        "end": {
                          "line": 45,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1894,
                        "end": 1921,
                        "loc": {
                          "start": {
                            "line": 45,
                            "column": 8
                          },
                          "end": {
                            "line": 45,
                            "column": 35
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1894,
                          "end": 1914,
                          "loc": {
                            "start": {
                              "line": 45,
                              "column": 8
                            },
                            "end": {
                              "line": 45,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1894,
                            "end": 1903,
                            "loc": {
                              "start": {
                                "line": 45,
                                "column": 8
                              },
                              "end": {
                                "line": 45,
                                "column": 17
                              },
                              "identifierName": "component"
                            },
                            "name": "component"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1904,
                            "end": 1914,
                            "loc": {
                              "start": {
                                "line": 45,
                                "column": 18
                              },
                              "end": {
                                "line": 45,
                                "column": 28
                              },
                              "identifierName": "gameObject"
                            },
                            "name": "gameObject"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ThisExpression",
                          "start": 1917,
                          "end": 1921,
                          "loc": {
                            "start": {
                              "line": 45,
                              "column": 31
                            },
                            "end": {
                              "line": 45,
                              "column": 35
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1931,
                      "end": 1958,
                      "loc": {
                        "start": {
                          "line": 46,
                          "column": 8
                        },
                        "end": {
                          "line": 46,
                          "column": 35
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1931,
                        "end": 1957,
                        "loc": {
                          "start": {
                            "line": 46,
                            "column": 8
                          },
                          "end": {
                            "line": 46,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 1931,
                          "end": 1955,
                          "loc": {
                            "start": {
                              "line": 46,
                              "column": 8
                            },
                            "end": {
                              "line": 46,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1931,
                            "end": 1940,
                            "loc": {
                              "start": {
                                "line": 46,
                                "column": 8
                              },
                              "end": {
                                "line": 46,
                                "column": 17
                              },
                              "identifierName": "component"
                            },
                            "name": "component"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1941,
                            "end": 1955,
                            "loc": {
                              "start": {
                                "line": 46,
                                "column": 18
                              },
                              "end": {
                                "line": 46,
                                "column": 32
                              },
                              "identifierName": "onAddComponent"
                            },
                            "name": "onAddComponent"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 1967,
                      "end": 1979,
                      "loc": {
                        "start": {
                          "line": 47,
                          "column": 8
                        },
                        "end": {
                          "line": 47,
                          "column": 20
                        }
                      },
                      "argument": {
                        "type": "BooleanLiteral",
                        "start": 1974,
                        "end": 1978,
                        "loc": {
                          "start": {
                            "line": 47,
                            "column": 15
                          },
                          "end": {
                            "line": 47,
                            "column": 19
                          }
                        },
                        "value": true
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Adds a component to this game object, and keeps reference to it.\n     * GameObjects will handle their components as they are added to the object.\n     * \n     * @param {Component} component The component assigned to this object.\n     ",
                    "start": 1187,
                    "end": 1434,
                    "loc": {
                      "start": {
                        "line": 30,
                        "column": 4
                      },
                      "end": {
                        "line": 35,
                        "column": 7
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Removes a single component from this GameObject by ID.\n     * \n     * @param {number} componentID Id of the component to remove.\n     ",
                    "start": 1991,
                    "end": 2138,
                    "loc": {
                      "start": {
                        "line": 50,
                        "column": 4
                      },
                      "end": {
                        "line": 54,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 2143,
                "end": 2644,
                "loc": {
                  "start": {
                    "line": 55,
                    "column": 4
                  },
                  "end": {
                    "line": 67,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 2143,
                  "end": 2158,
                  "loc": {
                    "start": {
                      "line": 55,
                      "column": 4
                    },
                    "end": {
                      "line": 55,
                      "column": 19
                    },
                    "identifierName": "removeComponent"
                  },
                  "name": "removeComponent",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 2159,
                    "end": 2172,
                    "loc": {
                      "start": {
                        "line": 55,
                        "column": 20
                      },
                      "end": {
                        "line": 55,
                        "column": 33
                      },
                      "identifierName": "componentName"
                    },
                    "name": "componentName"
                  },
                  {
                    "type": "Identifier",
                    "start": 2174,
                    "end": 2185,
                    "loc": {
                      "start": {
                        "line": 55,
                        "column": 35
                      },
                      "end": {
                        "line": 55,
                        "column": 46
                      },
                      "identifierName": "componentID"
                    },
                    "name": "componentID"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 2187,
                  "end": 2644,
                  "loc": {
                    "start": {
                      "line": 55,
                      "column": 48
                    },
                    "end": {
                      "line": 67,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 2197,
                      "end": 2266,
                      "loc": {
                        "start": {
                          "line": 56,
                          "column": 8
                        },
                        "end": {
                          "line": 57,
                          "column": 25
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 2201,
                        "end": 2239,
                        "loc": {
                          "start": {
                            "line": 56,
                            "column": 12
                          },
                          "end": {
                            "line": 56,
                            "column": 50
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 2201,
                          "end": 2231,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 12
                            },
                            "end": {
                              "line": 56,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2201,
                            "end": 2216,
                            "loc": {
                              "start": {
                                "line": 56,
                                "column": 12
                              },
                              "end": {
                                "line": 56,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 2201,
                              "end": 2205,
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 12
                                },
                                "end": {
                                  "line": 56,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2206,
                              "end": 2216,
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 17
                                },
                                "end": {
                                  "line": 56,
                                  "column": 27
                                },
                                "identifierName": "components"
                              },
                              "name": "components"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2217,
                            "end": 2230,
                            "loc": {
                              "start": {
                                "line": 56,
                                "column": 28
                              },
                              "end": {
                                "line": 56,
                                "column": 41
                              },
                              "identifierName": "componentName"
                            },
                            "name": "componentName"
                          },
                          "computed": true
                        },
                        "operator": "==",
                        "right": {
                          "type": "NullLiteral",
                          "start": 2235,
                          "end": 2239,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 46
                            },
                            "end": {
                              "line": 56,
                              "column": 50
                            }
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 2253,
                        "end": 2266,
                        "loc": {
                          "start": {
                            "line": 57,
                            "column": 12
                          },
                          "end": {
                            "line": 57,
                            "column": 25
                          }
                        },
                        "argument": {
                          "type": "BooleanLiteral",
                          "start": 2260,
                          "end": 2265,
                          "loc": {
                            "start": {
                              "line": 57,
                              "column": 19
                            },
                            "end": {
                              "line": 57,
                              "column": 24
                            }
                          },
                          "value": false
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ForStatement",
                      "start": 2275,
                      "end": 2616,
                      "loc": {
                        "start": {
                          "line": 58,
                          "column": 8
                        },
                        "end": {
                          "line": 65,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 2280,
                        "end": 2289,
                        "loc": {
                          "start": {
                            "line": 58,
                            "column": 13
                          },
                          "end": {
                            "line": 58,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 2284,
                            "end": 2289,
                            "loc": {
                              "start": {
                                "line": 58,
                                "column": 17
                              },
                              "end": {
                                "line": 58,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 2284,
                              "end": 2285,
                              "loc": {
                                "start": {
                                  "line": 58,
                                  "column": 17
                                },
                                "end": {
                                  "line": 58,
                                  "column": 18
                                },
                                "identifierName": "i"
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "NumericLiteral",
                              "start": 2288,
                              "end": 2289,
                              "loc": {
                                "start": {
                                  "line": 58,
                                  "column": 21
                                },
                                "end": {
                                  "line": 58,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "value": 0
                            }
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 2291,
                        "end": 2332,
                        "loc": {
                          "start": {
                            "line": 58,
                            "column": 24
                          },
                          "end": {
                            "line": 58,
                            "column": 65
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 2291,
                          "end": 2292,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 24
                            },
                            "end": {
                              "line": 58,
                              "column": 25
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "MemberExpression",
                          "start": 2295,
                          "end": 2332,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 28
                            },
                            "end": {
                              "line": 58,
                              "column": 65
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2295,
                            "end": 2325,
                            "loc": {
                              "start": {
                                "line": 58,
                                "column": 28
                              },
                              "end": {
                                "line": 58,
                                "column": 58
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 2295,
                              "end": 2310,
                              "loc": {
                                "start": {
                                  "line": 58,
                                  "column": 28
                                },
                                "end": {
                                  "line": 58,
                                  "column": 43
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2295,
                                "end": 2299,
                                "loc": {
                                  "start": {
                                    "line": 58,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 58,
                                    "column": 32
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2300,
                                "end": 2310,
                                "loc": {
                                  "start": {
                                    "line": 58,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 58,
                                    "column": 43
                                  },
                                  "identifierName": "components"
                                },
                                "name": "components"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2311,
                              "end": 2324,
                              "loc": {
                                "start": {
                                  "line": 58,
                                  "column": 44
                                },
                                "end": {
                                  "line": 58,
                                  "column": 57
                                },
                                "identifierName": "componentName"
                              },
                              "name": "componentName"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2326,
                            "end": 2332,
                            "loc": {
                              "start": {
                                "line": 58,
                                "column": 59
                              },
                              "end": {
                                "line": 58,
                                "column": 65
                              },
                              "identifierName": "length"
                            },
                            "name": "length"
                          },
                          "computed": false
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 2334,
                        "end": 2337,
                        "loc": {
                          "start": {
                            "line": 58,
                            "column": 67
                          },
                          "end": {
                            "line": 58,
                            "column": 70
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 2334,
                          "end": 2335,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 67
                            },
                            "end": {
                              "line": 58,
                              "column": 68
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 2339,
                        "end": 2616,
                        "loc": {
                          "start": {
                            "line": 58,
                            "column": 72
                          },
                          "end": {
                            "line": 65,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 2353,
                            "end": 2606,
                            "loc": {
                              "start": {
                                "line": 59,
                                "column": 12
                              },
                              "end": {
                                "line": 64,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 2357,
                              "end": 2409,
                              "loc": {
                                "start": {
                                  "line": 59,
                                  "column": 16
                                },
                                "end": {
                                  "line": 59,
                                  "column": 68
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 2357,
                                "end": 2393,
                                "loc": {
                                  "start": {
                                    "line": 59,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 59,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2357,
                                  "end": 2390,
                                  "loc": {
                                    "start": {
                                      "line": 59,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 59,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2357,
                                    "end": 2387,
                                    "loc": {
                                      "start": {
                                        "line": 59,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 59,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 2357,
                                      "end": 2372,
                                      "loc": {
                                        "start": {
                                          "line": 59,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 59,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 2357,
                                        "end": 2361,
                                        "loc": {
                                          "start": {
                                            "line": 59,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 59,
                                            "column": 20
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2362,
                                        "end": 2372,
                                        "loc": {
                                          "start": {
                                            "line": 59,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 59,
                                            "column": 31
                                          },
                                          "identifierName": "components"
                                        },
                                        "name": "components"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2373,
                                      "end": 2386,
                                      "loc": {
                                        "start": {
                                          "line": 59,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 59,
                                          "column": 45
                                        },
                                        "identifierName": "componentName"
                                      },
                                      "name": "componentName"
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2388,
                                    "end": 2389,
                                    "loc": {
                                      "start": {
                                        "line": 59,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 59,
                                        "column": 48
                                      },
                                      "identifierName": "i"
                                    },
                                    "name": "i"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2391,
                                  "end": 2393,
                                  "loc": {
                                    "start": {
                                      "line": 59,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 59,
                                      "column": 52
                                    },
                                    "identifierName": "id"
                                  },
                                  "name": "id"
                                },
                                "computed": false
                              },
                              "operator": "===",
                              "right": {
                                "type": "Identifier",
                                "start": 2398,
                                "end": 2409,
                                "loc": {
                                  "start": {
                                    "line": 59,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 59,
                                    "column": 68
                                  },
                                  "identifierName": "componentID"
                                },
                                "name": "componentID"
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 2411,
                              "end": 2606,
                              "loc": {
                                "start": {
                                  "line": 59,
                                  "column": 70
                                },
                                "end": {
                                  "line": 64,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 2429,
                                  "end": 2474,
                                  "loc": {
                                    "start": {
                                      "line": 60,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 60,
                                      "column": 61
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 2433,
                                      "end": 2473,
                                      "loc": {
                                        "start": {
                                          "line": 60,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 60,
                                          "column": 60
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 2433,
                                        "end": 2437,
                                        "loc": {
                                          "start": {
                                            "line": 60,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 60,
                                            "column": 24
                                          },
                                          "identifierName": "comp"
                                        },
                                        "name": "comp"
                                      },
                                      "init": {
                                        "type": "MemberExpression",
                                        "start": 2440,
                                        "end": 2473,
                                        "loc": {
                                          "start": {
                                            "line": 60,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 60,
                                            "column": 60
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 2440,
                                          "end": 2470,
                                          "loc": {
                                            "start": {
                                              "line": 60,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 60,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 2440,
                                            "end": 2455,
                                            "loc": {
                                              "start": {
                                                "line": 60,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 60,
                                                "column": 42
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 2440,
                                              "end": 2444,
                                              "loc": {
                                                "start": {
                                                  "line": 60,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 60,
                                                  "column": 31
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2445,
                                              "end": 2455,
                                              "loc": {
                                                "start": {
                                                  "line": 60,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 60,
                                                  "column": 42
                                                },
                                                "identifierName": "components"
                                              },
                                              "name": "components"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2456,
                                            "end": 2469,
                                            "loc": {
                                              "start": {
                                                "line": 60,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 60,
                                                "column": 56
                                              },
                                              "identifierName": "componentName"
                                            },
                                            "name": "componentName"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 2471,
                                          "end": 2472,
                                          "loc": {
                                            "start": {
                                              "line": 60,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 60,
                                              "column": 59
                                            },
                                            "identifierName": "i"
                                          },
                                          "name": "i"
                                        },
                                        "computed": true
                                      }
                                    }
                                  ],
                                  "kind": "let"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 2491,
                                  "end": 2535,
                                  "loc": {
                                    "start": {
                                      "line": 61,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 61,
                                      "column": 60
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 2491,
                                    "end": 2534,
                                    "loc": {
                                      "start": {
                                        "line": 61,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 61,
                                        "column": 59
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 2491,
                                      "end": 2528,
                                      "loc": {
                                        "start": {
                                          "line": 61,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 61,
                                          "column": 53
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 2491,
                                        "end": 2521,
                                        "loc": {
                                          "start": {
                                            "line": 61,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 61,
                                            "column": 46
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 2491,
                                          "end": 2506,
                                          "loc": {
                                            "start": {
                                              "line": 61,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 61,
                                              "column": 31
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 2491,
                                            "end": 2495,
                                            "loc": {
                                              "start": {
                                                "line": 61,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 61,
                                                "column": 20
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2496,
                                            "end": 2506,
                                            "loc": {
                                              "start": {
                                                "line": 61,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 61,
                                                "column": 31
                                              },
                                              "identifierName": "components"
                                            },
                                            "name": "components"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 2507,
                                          "end": 2520,
                                          "loc": {
                                            "start": {
                                              "line": 61,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 61,
                                              "column": 45
                                            },
                                            "identifierName": "componentName"
                                          },
                                          "name": "componentName"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2522,
                                        "end": 2528,
                                        "loc": {
                                          "start": {
                                            "line": 61,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 61,
                                            "column": 53
                                          },
                                          "identifierName": "splice"
                                        },
                                        "name": "splice"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 2529,
                                        "end": 2530,
                                        "loc": {
                                          "start": {
                                            "line": 61,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 61,
                                            "column": 55
                                          },
                                          "identifierName": "i"
                                        },
                                        "name": "i"
                                      },
                                      {
                                        "type": "NumericLiteral",
                                        "start": 2532,
                                        "end": 2533,
                                        "loc": {
                                          "start": {
                                            "line": 61,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 61,
                                            "column": 58
                                          }
                                        },
                                        "extra": {
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "value": 1
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 2552,
                                  "end": 2563,
                                  "loc": {
                                    "start": {
                                      "line": 62,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 62,
                                      "column": 27
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 2552,
                                    "end": 2562,
                                    "loc": {
                                      "start": {
                                        "line": 62,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 62,
                                        "column": 26
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 2552,
                                      "end": 2560,
                                      "loc": {
                                        "start": {
                                          "line": 62,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 62,
                                          "column": 24
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 2552,
                                        "end": 2556,
                                        "loc": {
                                          "start": {
                                            "line": 62,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 62,
                                            "column": 20
                                          },
                                          "identifierName": "comp"
                                        },
                                        "name": "comp"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2557,
                                        "end": 2560,
                                        "loc": {
                                          "start": {
                                            "line": 62,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 62,
                                            "column": 24
                                          },
                                          "identifierName": "end"
                                        },
                                        "name": "end"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                },
                                {
                                  "type": "ReturnStatement",
                                  "start": 2580,
                                  "end": 2592,
                                  "loc": {
                                    "start": {
                                      "line": 63,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 63,
                                      "column": 28
                                    }
                                  },
                                  "argument": {
                                    "type": "BooleanLiteral",
                                    "start": 2587,
                                    "end": 2591,
                                    "loc": {
                                      "start": {
                                        "line": 63,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 63,
                                        "column": 27
                                      }
                                    },
                                    "value": true
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          }
                        ],
                        "directives": []
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 2625,
                      "end": 2638,
                      "loc": {
                        "start": {
                          "line": 66,
                          "column": 8
                        },
                        "end": {
                          "line": 66,
                          "column": 21
                        }
                      },
                      "argument": {
                        "type": "BooleanLiteral",
                        "start": 2632,
                        "end": 2637,
                        "loc": {
                          "start": {
                            "line": 66,
                            "column": 15
                          },
                          "end": {
                            "line": 66,
                            "column": 20
                          }
                        },
                        "value": false
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Removes a single component from this GameObject by ID.\n     * \n     * @param {number} componentID Id of the component to remove.\n     ",
                    "start": 1991,
                    "end": 2138,
                    "loc": {
                      "start": {
                        "line": 50,
                        "column": 4
                      },
                      "end": {
                        "line": 54,
                        "column": 7
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Removes all Components of the named type.\n     * \n     * @param {string} componentName The name of the components to clear.\n     ",
                    "start": 2650,
                    "end": 2792,
                    "loc": {
                      "start": {
                        "line": 69,
                        "column": 4
                      },
                      "end": {
                        "line": 73,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 2797,
                "end": 3163,
                "loc": {
                  "start": {
                    "line": 74,
                    "column": 4
                  },
                  "end": {
                    "line": 83,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 2797,
                  "end": 2813,
                  "loc": {
                    "start": {
                      "line": 74,
                      "column": 4
                    },
                    "end": {
                      "line": 74,
                      "column": 20
                    },
                    "identifierName": "removeComponents"
                  },
                  "name": "removeComponents",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 2814,
                    "end": 2827,
                    "loc": {
                      "start": {
                        "line": 74,
                        "column": 21
                      },
                      "end": {
                        "line": 74,
                        "column": 34
                      },
                      "identifierName": "componentName"
                    },
                    "name": "componentName"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 2829,
                  "end": 3163,
                  "loc": {
                    "start": {
                      "line": 74,
                      "column": 36
                    },
                    "end": {
                      "line": 83,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 2839,
                      "end": 2908,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 8
                        },
                        "end": {
                          "line": 76,
                          "column": 25
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 2843,
                        "end": 2881,
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 12
                          },
                          "end": {
                            "line": 75,
                            "column": 50
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 2843,
                          "end": 2873,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 12
                            },
                            "end": {
                              "line": 75,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2843,
                            "end": 2858,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 12
                              },
                              "end": {
                                "line": 75,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 2843,
                              "end": 2847,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 12
                                },
                                "end": {
                                  "line": 75,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2848,
                              "end": 2858,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 17
                                },
                                "end": {
                                  "line": 75,
                                  "column": 27
                                },
                                "identifierName": "components"
                              },
                              "name": "components"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2859,
                            "end": 2872,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 28
                              },
                              "end": {
                                "line": 75,
                                "column": 41
                              },
                              "identifierName": "componentName"
                            },
                            "name": "componentName"
                          },
                          "computed": true
                        },
                        "operator": "==",
                        "right": {
                          "type": "NullLiteral",
                          "start": 2877,
                          "end": 2881,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 46
                            },
                            "end": {
                              "line": 75,
                              "column": 50
                            }
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 2895,
                        "end": 2908,
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 12
                          },
                          "end": {
                            "line": 76,
                            "column": 25
                          }
                        },
                        "argument": {
                          "type": "BooleanLiteral",
                          "start": 2902,
                          "end": 2907,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 19
                            },
                            "end": {
                              "line": 76,
                              "column": 24
                            }
                          },
                          "value": false
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ForStatement",
                      "start": 2917,
                      "end": 3136,
                      "loc": {
                        "start": {
                          "line": 77,
                          "column": 8
                        },
                        "end": {
                          "line": 81,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 2922,
                        "end": 2971,
                        "loc": {
                          "start": {
                            "line": 77,
                            "column": 13
                          },
                          "end": {
                            "line": 77,
                            "column": 62
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 2926,
                            "end": 2971,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 17
                              },
                              "end": {
                                "line": 77,
                                "column": 62
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 2926,
                              "end": 2927,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 17
                                },
                                "end": {
                                  "line": 77,
                                  "column": 18
                                },
                                "identifierName": "i"
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "BinaryExpression",
                              "start": 2930,
                              "end": 2971,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 21
                                },
                                "end": {
                                  "line": 77,
                                  "column": 62
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 2930,
                                "end": 2967,
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 58
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2930,
                                  "end": 2960,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 51
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2930,
                                    "end": 2945,
                                    "loc": {
                                      "start": {
                                        "line": 77,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 77,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 2930,
                                      "end": 2934,
                                      "loc": {
                                        "start": {
                                          "line": 77,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 77,
                                          "column": 25
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2935,
                                      "end": 2945,
                                      "loc": {
                                        "start": {
                                          "line": 77,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 77,
                                          "column": 36
                                        },
                                        "identifierName": "components"
                                      },
                                      "name": "components"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2946,
                                    "end": 2959,
                                    "loc": {
                                      "start": {
                                        "line": 77,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 77,
                                        "column": 50
                                      },
                                      "identifierName": "componentName"
                                    },
                                    "name": "componentName"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2961,
                                  "end": 2967,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 58
                                    },
                                    "identifierName": "length"
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "operator": "-",
                              "right": {
                                "type": "NumericLiteral",
                                "start": 2970,
                                "end": 2971,
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 62
                                  }
                                },
                                "extra": {
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                "value": 1
                              }
                            }
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 2973,
                        "end": 2979,
                        "loc": {
                          "start": {
                            "line": 77,
                            "column": 64
                          },
                          "end": {
                            "line": 77,
                            "column": 70
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 2973,
                          "end": 2974,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 64
                            },
                            "end": {
                              "line": 77,
                              "column": 65
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        },
                        "operator": ">=",
                        "right": {
                          "type": "NumericLiteral",
                          "start": 2978,
                          "end": 2979,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 69
                            },
                            "end": {
                              "line": 77,
                              "column": 70
                            }
                          },
                          "extra": {
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "value": 0
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 2981,
                        "end": 2984,
                        "loc": {
                          "start": {
                            "line": 77,
                            "column": 72
                          },
                          "end": {
                            "line": 77,
                            "column": 75
                          }
                        },
                        "operator": "--",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 2981,
                          "end": 2982,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 72
                            },
                            "end": {
                              "line": 77,
                              "column": 73
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 2986,
                        "end": 3136,
                        "loc": {
                          "start": {
                            "line": 77,
                            "column": 77
                          },
                          "end": {
                            "line": 81,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 3000,
                            "end": 3045,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 12
                              },
                              "end": {
                                "line": 78,
                                "column": 57
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 3004,
                                "end": 3044,
                                "loc": {
                                  "start": {
                                    "line": 78,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 78,
                                    "column": 56
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 3004,
                                  "end": 3008,
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 20
                                    },
                                    "identifierName": "comp"
                                  },
                                  "name": "comp"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 3011,
                                  "end": 3044,
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 3011,
                                    "end": 3041,
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 3011,
                                      "end": 3026,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 3011,
                                        "end": 3015,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 27
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 3016,
                                        "end": 3026,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 38
                                          },
                                          "identifierName": "components"
                                        },
                                        "name": "components"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3027,
                                      "end": 3040,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 52
                                        },
                                        "identifierName": "componentName"
                                      },
                                      "name": "componentName"
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3042,
                                    "end": 3043,
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 55
                                      },
                                      "identifierName": "i"
                                    },
                                    "name": "i"
                                  },
                                  "computed": true
                                }
                              }
                            ],
                            "kind": "let"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 3058,
                            "end": 3102,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 12
                              },
                              "end": {
                                "line": 79,
                                "column": 56
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 3058,
                              "end": 3101,
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 12
                                },
                                "end": {
                                  "line": 79,
                                  "column": 55
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3058,
                                "end": 3095,
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3058,
                                  "end": 3088,
                                  "loc": {
                                    "start": {
                                      "line": 79,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 79,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 3058,
                                    "end": 3073,
                                    "loc": {
                                      "start": {
                                        "line": 79,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 79,
                                        "column": 27
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 3058,
                                      "end": 3062,
                                      "loc": {
                                        "start": {
                                          "line": 79,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 79,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3063,
                                      "end": 3073,
                                      "loc": {
                                        "start": {
                                          "line": 79,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 79,
                                          "column": 27
                                        },
                                        "identifierName": "components"
                                      },
                                      "name": "components"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3074,
                                    "end": 3087,
                                    "loc": {
                                      "start": {
                                        "line": 79,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 79,
                                        "column": 41
                                      },
                                      "identifierName": "componentName"
                                    },
                                    "name": "componentName"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3089,
                                  "end": 3095,
                                  "loc": {
                                    "start": {
                                      "line": 79,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 79,
                                      "column": 49
                                    },
                                    "identifierName": "splice"
                                  },
                                  "name": "splice"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 3096,
                                  "end": 3097,
                                  "loc": {
                                    "start": {
                                      "line": 79,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 79,
                                      "column": 51
                                    },
                                    "identifierName": "i"
                                  },
                                  "name": "i"
                                },
                                {
                                  "type": "NumericLiteral",
                                  "start": 3099,
                                  "end": 3100,
                                  "loc": {
                                    "start": {
                                      "line": 79,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 79,
                                      "column": 54
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "value": 1
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 3115,
                            "end": 3126,
                            "loc": {
                              "start": {
                                "line": 80,
                                "column": 12
                              },
                              "end": {
                                "line": 80,
                                "column": 23
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 3115,
                              "end": 3125,
                              "loc": {
                                "start": {
                                  "line": 80,
                                  "column": 12
                                },
                                "end": {
                                  "line": 80,
                                  "column": 22
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3115,
                                "end": 3123,
                                "loc": {
                                  "start": {
                                    "line": 80,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 80,
                                    "column": 20
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3115,
                                  "end": 3119,
                                  "loc": {
                                    "start": {
                                      "line": 80,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 80,
                                      "column": 16
                                    },
                                    "identifierName": "comp"
                                  },
                                  "name": "comp"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3120,
                                  "end": 3123,
                                  "loc": {
                                    "start": {
                                      "line": 80,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 80,
                                      "column": 20
                                    },
                                    "identifierName": "end"
                                  },
                                  "name": "end"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          }
                        ],
                        "directives": []
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 3145,
                      "end": 3157,
                      "loc": {
                        "start": {
                          "line": 82,
                          "column": 8
                        },
                        "end": {
                          "line": 82,
                          "column": 20
                        }
                      },
                      "argument": {
                        "type": "BooleanLiteral",
                        "start": 3152,
                        "end": 3156,
                        "loc": {
                          "start": {
                            "line": 82,
                            "column": 15
                          },
                          "end": {
                            "line": 82,
                            "column": 19
                          }
                        },
                        "value": true
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Removes all Components of the named type.\n     * \n     * @param {string} componentName The name of the components to clear.\n     ",
                    "start": 2650,
                    "end": 2792,
                    "loc": {
                      "start": {
                        "line": 69,
                        "column": 4
                      },
                      "end": {
                        "line": 73,
                        "column": 7
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Removes all components except for the Transform component.\n     ",
                    "start": 3169,
                    "end": 3246,
                    "loc": {
                      "start": {
                        "line": 85,
                        "column": 4
                      },
                      "end": {
                        "line": 87,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 3251,
                "end": 3734,
                "loc": {
                  "start": {
                    "line": 88,
                    "column": 4
                  },
                  "end": {
                    "line": 100,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 3251,
                  "end": 3270,
                  "loc": {
                    "start": {
                      "line": 88,
                      "column": 4
                    },
                    "end": {
                      "line": 88,
                      "column": 23
                    },
                    "identifierName": "removeAllComponents"
                  },
                  "name": "removeAllComponents",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 3273,
                  "end": 3734,
                  "loc": {
                    "start": {
                      "line": 88,
                      "column": 26
                    },
                    "end": {
                      "line": 100,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 3283,
                      "end": 3328,
                      "loc": {
                        "start": {
                          "line": 89,
                          "column": 8
                        },
                        "end": {
                          "line": 89,
                          "column": 53
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 3287,
                          "end": 3327,
                          "loc": {
                            "start": {
                              "line": 89,
                              "column": 12
                            },
                            "end": {
                              "line": 89,
                              "column": 52
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 3287,
                            "end": 3296,
                            "loc": {
                              "start": {
                                "line": 89,
                                "column": 12
                              },
                              "end": {
                                "line": 89,
                                "column": 21
                              },
                              "identifierName": "compTypes"
                            },
                            "name": "compTypes"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 3299,
                            "end": 3327,
                            "loc": {
                              "start": {
                                "line": 89,
                                "column": 24
                              },
                              "end": {
                                "line": 89,
                                "column": 52
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 3299,
                              "end": 3310,
                              "loc": {
                                "start": {
                                  "line": 89,
                                  "column": 24
                                },
                                "end": {
                                  "line": 89,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 3299,
                                "end": 3305,
                                "loc": {
                                  "start": {
                                    "line": 89,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 89,
                                    "column": 30
                                  },
                                  "identifierName": "Object"
                                },
                                "name": "Object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3306,
                                "end": 3310,
                                "loc": {
                                  "start": {
                                    "line": 89,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 89,
                                    "column": 35
                                  },
                                  "identifierName": "keys"
                                },
                                "name": "keys"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 3311,
                                "end": 3326,
                                "loc": {
                                  "start": {
                                    "line": 89,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 89,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3311,
                                  "end": 3315,
                                  "loc": {
                                    "start": {
                                      "line": 89,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 40
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3316,
                                  "end": 3326,
                                  "loc": {
                                    "start": {
                                      "line": 89,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 51
                                    },
                                    "identifierName": "components"
                                  },
                                  "name": "components"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ForStatement",
                      "start": 3337,
                      "end": 3707,
                      "loc": {
                        "start": {
                          "line": 90,
                          "column": 8
                        },
                        "end": {
                          "line": 98,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 3342,
                        "end": 3351,
                        "loc": {
                          "start": {
                            "line": 90,
                            "column": 13
                          },
                          "end": {
                            "line": 90,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 3346,
                            "end": 3351,
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 17
                              },
                              "end": {
                                "line": 90,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 3346,
                              "end": 3347,
                              "loc": {
                                "start": {
                                  "line": 90,
                                  "column": 17
                                },
                                "end": {
                                  "line": 90,
                                  "column": 18
                                },
                                "identifierName": "i"
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "NumericLiteral",
                              "start": 3350,
                              "end": 3351,
                              "loc": {
                                "start": {
                                  "line": 90,
                                  "column": 21
                                },
                                "end": {
                                  "line": 90,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "value": 0
                            }
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 3353,
                        "end": 3373,
                        "loc": {
                          "start": {
                            "line": 90,
                            "column": 24
                          },
                          "end": {
                            "line": 90,
                            "column": 44
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 3353,
                          "end": 3354,
                          "loc": {
                            "start": {
                              "line": 90,
                              "column": 24
                            },
                            "end": {
                              "line": 90,
                              "column": 25
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "MemberExpression",
                          "start": 3357,
                          "end": 3373,
                          "loc": {
                            "start": {
                              "line": 90,
                              "column": 28
                            },
                            "end": {
                              "line": 90,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 3357,
                            "end": 3366,
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 28
                              },
                              "end": {
                                "line": 90,
                                "column": 37
                              },
                              "identifierName": "compTypes"
                            },
                            "name": "compTypes"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3367,
                            "end": 3373,
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 38
                              },
                              "end": {
                                "line": 90,
                                "column": 44
                              },
                              "identifierName": "length"
                            },
                            "name": "length"
                          },
                          "computed": false
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 3375,
                        "end": 3378,
                        "loc": {
                          "start": {
                            "line": 90,
                            "column": 46
                          },
                          "end": {
                            "line": 90,
                            "column": 49
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 3375,
                          "end": 3376,
                          "loc": {
                            "start": {
                              "line": 90,
                              "column": 46
                            },
                            "end": {
                              "line": 90,
                              "column": 47
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 3380,
                        "end": 3707,
                        "loc": {
                          "start": {
                            "line": 90,
                            "column": 51
                          },
                          "end": {
                            "line": 98,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 3394,
                            "end": 3426,
                            "loc": {
                              "start": {
                                "line": 91,
                                "column": 12
                              },
                              "end": {
                                "line": 91,
                                "column": 44
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 3398,
                                "end": 3425,
                                "loc": {
                                  "start": {
                                    "line": 91,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 91,
                                    "column": 43
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 3398,
                                  "end": 3410,
                                  "loc": {
                                    "start": {
                                      "line": 91,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 91,
                                      "column": 28
                                    },
                                    "identifierName": "thisCompType"
                                  },
                                  "name": "thisCompType"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 3413,
                                  "end": 3425,
                                  "loc": {
                                    "start": {
                                      "line": 91,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 91,
                                      "column": 43
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 3413,
                                    "end": 3422,
                                    "loc": {
                                      "start": {
                                        "line": 91,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 91,
                                        "column": 40
                                      },
                                      "identifierName": "compTypes"
                                    },
                                    "name": "compTypes"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3423,
                                    "end": 3424,
                                    "loc": {
                                      "start": {
                                        "line": 91,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 91,
                                        "column": 42
                                      },
                                      "identifierName": "i"
                                    },
                                    "name": "i"
                                  },
                                  "computed": true
                                }
                              }
                            ],
                            "kind": "let"
                          },
                          {
                            "type": "IfStatement",
                            "start": 3439,
                            "end": 3498,
                            "loc": {
                              "start": {
                                "line": 92,
                                "column": 12
                              },
                              "end": {
                                "line": 93,
                                "column": 25
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 3443,
                              "end": 3471,
                              "loc": {
                                "start": {
                                  "line": 92,
                                  "column": 16
                                },
                                "end": {
                                  "line": 92,
                                  "column": 44
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 3443,
                                "end": 3455,
                                "loc": {
                                  "start": {
                                    "line": 92,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 92,
                                    "column": 28
                                  },
                                  "identifierName": "thisCompType"
                                },
                                "name": "thisCompType"
                              },
                              "operator": "===",
                              "right": {
                                "type": "StringLiteral",
                                "start": 3460,
                                "end": 3471,
                                "loc": {
                                  "start": {
                                    "line": 92,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 92,
                                    "column": 44
                                  }
                                },
                                "extra": {
                                  "rawValue": "Transform",
                                  "raw": "'Transform'"
                                },
                                "value": "Transform"
                              }
                            },
                            "consequent": {
                              "type": "ContinueStatement",
                              "start": 3489,
                              "end": 3498,
                              "loc": {
                                "start": {
                                  "line": 93,
                                  "column": 16
                                },
                                "end": {
                                  "line": 93,
                                  "column": 25
                                }
                              },
                              "label": null
                            },
                            "alternate": null
                          },
                          {
                            "type": "ForStatement",
                            "start": 3511,
                            "end": 3649,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 12
                              },
                              "end": {
                                "line": 96,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 3516,
                              "end": 3526,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 17
                                },
                                "end": {
                                  "line": 94,
                                  "column": 27
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 3520,
                                  "end": 3526,
                                  "loc": {
                                    "start": {
                                      "line": 94,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 94,
                                      "column": 27
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 3520,
                                    "end": 3522,
                                    "loc": {
                                      "start": {
                                        "line": 94,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 94,
                                        "column": 23
                                      },
                                      "identifierName": "ii"
                                    },
                                    "name": "ii"
                                  },
                                  "init": {
                                    "type": "NumericLiteral",
                                    "start": 3525,
                                    "end": 3526,
                                    "loc": {
                                      "start": {
                                        "line": 94,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 94,
                                        "column": 27
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "value": 0
                                  }
                                }
                              ],
                              "kind": "let"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 3528,
                              "end": 3569,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 29
                                },
                                "end": {
                                  "line": 94,
                                  "column": 70
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 3528,
                                "end": 3530,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 31
                                  },
                                  "identifierName": "ii"
                                },
                                "name": "ii"
                              },
                              "operator": "<",
                              "right": {
                                "type": "MemberExpression",
                                "start": 3533,
                                "end": 3569,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 70
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3533,
                                  "end": 3562,
                                  "loc": {
                                    "start": {
                                      "line": 94,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 94,
                                      "column": 63
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 3533,
                                    "end": 3548,
                                    "loc": {
                                      "start": {
                                        "line": 94,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 94,
                                        "column": 49
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 3533,
                                      "end": 3537,
                                      "loc": {
                                        "start": {
                                          "line": 94,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 94,
                                          "column": 38
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3538,
                                      "end": 3548,
                                      "loc": {
                                        "start": {
                                          "line": 94,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 94,
                                          "column": 49
                                        },
                                        "identifierName": "components"
                                      },
                                      "name": "components"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3549,
                                    "end": 3561,
                                    "loc": {
                                      "start": {
                                        "line": 94,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 94,
                                        "column": 62
                                      },
                                      "identifierName": "thisCompType"
                                    },
                                    "name": "thisCompType"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3563,
                                  "end": 3569,
                                  "loc": {
                                    "start": {
                                      "line": 94,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 94,
                                      "column": 70
                                    },
                                    "identifierName": "length"
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              }
                            },
                            "update": {
                              "type": "UpdateExpression",
                              "start": 3571,
                              "end": 3575,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 72
                                },
                                "end": {
                                  "line": 94,
                                  "column": 76
                                }
                              },
                              "operator": "++",
                              "prefix": false,
                              "argument": {
                                "type": "Identifier",
                                "start": 3571,
                                "end": 3573,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 72
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 74
                                  },
                                  "identifierName": "ii"
                                },
                                "name": "ii"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 3577,
                              "end": 3649,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 78
                                },
                                "end": {
                                  "line": 96,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 3595,
                                  "end": 3635,
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 56
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 3595,
                                    "end": 3634,
                                    "loc": {
                                      "start": {
                                        "line": 95,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 95,
                                        "column": 55
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 3595,
                                      "end": 3632,
                                      "loc": {
                                        "start": {
                                          "line": 95,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 95,
                                          "column": 53
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 3595,
                                        "end": 3628,
                                        "loc": {
                                          "start": {
                                            "line": 95,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 95,
                                            "column": 49
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 3595,
                                          "end": 3624,
                                          "loc": {
                                            "start": {
                                              "line": 95,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 95,
                                              "column": 45
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 3595,
                                            "end": 3610,
                                            "loc": {
                                              "start": {
                                                "line": 95,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 95,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 3595,
                                              "end": 3599,
                                              "loc": {
                                                "start": {
                                                  "line": 95,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 95,
                                                  "column": 20
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 3600,
                                              "end": 3610,
                                              "loc": {
                                                "start": {
                                                  "line": 95,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 95,
                                                  "column": 31
                                                },
                                                "identifierName": "components"
                                              },
                                              "name": "components"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 3611,
                                            "end": 3623,
                                            "loc": {
                                              "start": {
                                                "line": 95,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 95,
                                                "column": 44
                                              },
                                              "identifierName": "thisCompType"
                                            },
                                            "name": "thisCompType"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 3625,
                                          "end": 3627,
                                          "loc": {
                                            "start": {
                                              "line": 95,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 95,
                                              "column": 48
                                            },
                                            "identifierName": "ii"
                                          },
                                          "name": "ii"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 3629,
                                        "end": 3632,
                                        "loc": {
                                          "start": {
                                            "line": 95,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 95,
                                            "column": 53
                                          },
                                          "identifierName": "end"
                                        },
                                        "name": "end"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ],
                              "directives": []
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 3662,
                            "end": 3697,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 12
                              },
                              "end": {
                                "line": 97,
                                "column": 47
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 3662,
                              "end": 3696,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 12
                                },
                                "end": {
                                  "line": 97,
                                  "column": 46
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 3662,
                                "end": 3691,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3662,
                                  "end": 3677,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3662,
                                    "end": 3666,
                                    "loc": {
                                      "start": {
                                        "line": 97,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 97,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3667,
                                    "end": 3677,
                                    "loc": {
                                      "start": {
                                        "line": 97,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 97,
                                        "column": 27
                                      },
                                      "identifierName": "components"
                                    },
                                    "name": "components"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3678,
                                  "end": 3690,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 40
                                    },
                                    "identifierName": "thisCompType"
                                  },
                                  "name": "thisCompType"
                                },
                                "computed": true
                              },
                              "right": {
                                "type": "ArrayExpression",
                                "start": 3694,
                                "end": 3696,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 46
                                  }
                                },
                                "elements": []
                              }
                            }
                          }
                        ],
                        "directives": []
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 3716,
                      "end": 3728,
                      "loc": {
                        "start": {
                          "line": 99,
                          "column": 8
                        },
                        "end": {
                          "line": 99,
                          "column": 20
                        }
                      },
                      "argument": {
                        "type": "BooleanLiteral",
                        "start": 3723,
                        "end": 3727,
                        "loc": {
                          "start": {
                            "line": 99,
                            "column": 15
                          },
                          "end": {
                            "line": 99,
                            "column": 19
                          }
                        },
                        "value": true
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Removes all components except for the Transform component.\n     ",
                    "start": 3169,
                    "end": 3246,
                    "loc": {
                      "start": {
                        "line": 85,
                        "column": 4
                      },
                      "end": {
                        "line": 87,
                        "column": 7
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Returns a boolean on if there is a component of type {componentName}.\n     * \n     * @param {string} componentName Name of the component type to search for.\n     * \n     * @returns {boolean} true if there is at least one component of this type.\n     ",
                    "start": 3740,
                    "end": 4003,
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 4
                      },
                      "end": {
                        "line": 108,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 4008,
                "end": 4191,
                "loc": {
                  "start": {
                    "line": 109,
                    "column": 4
                  },
                  "end": {
                    "line": 114,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 4008,
                  "end": 4020,
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 4
                    },
                    "end": {
                      "line": 109,
                      "column": 16
                    },
                    "identifierName": "hasComponent"
                  },
                  "name": "hasComponent",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4021,
                    "end": 4034,
                    "loc": {
                      "start": {
                        "line": 109,
                        "column": 17
                      },
                      "end": {
                        "line": 109,
                        "column": 30
                      },
                      "identifierName": "componentName"
                    },
                    "name": "componentName"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4036,
                  "end": 4191,
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 32
                    },
                    "end": {
                      "line": 114,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 4046,
                      "end": 4127,
                      "loc": {
                        "start": {
                          "line": 110,
                          "column": 8
                        },
                        "end": {
                          "line": 112,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 4050,
                        "end": 4088,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 12
                          },
                          "end": {
                            "line": 110,
                            "column": 50
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 4050,
                          "end": 4080,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 12
                            },
                            "end": {
                              "line": 110,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4050,
                            "end": 4065,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 12
                              },
                              "end": {
                                "line": 110,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4050,
                              "end": 4054,
                              "loc": {
                                "start": {
                                  "line": 110,
                                  "column": 12
                                },
                                "end": {
                                  "line": 110,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4055,
                              "end": 4065,
                              "loc": {
                                "start": {
                                  "line": 110,
                                  "column": 17
                                },
                                "end": {
                                  "line": 110,
                                  "column": 27
                                },
                                "identifierName": "components"
                              },
                              "name": "components"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4066,
                            "end": 4079,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 28
                              },
                              "end": {
                                "line": 110,
                                "column": 41
                              },
                              "identifierName": "componentName"
                            },
                            "name": "componentName"
                          },
                          "computed": true
                        },
                        "operator": "==",
                        "right": {
                          "type": "NullLiteral",
                          "start": 4084,
                          "end": 4088,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 46
                            },
                            "end": {
                              "line": 110,
                              "column": 50
                            }
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 4090,
                        "end": 4127,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 52
                          },
                          "end": {
                            "line": 112,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 4104,
                            "end": 4117,
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 12
                              },
                              "end": {
                                "line": 111,
                                "column": 25
                              }
                            },
                            "argument": {
                              "type": "BooleanLiteral",
                              "start": 4111,
                              "end": 4116,
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 19
                                },
                                "end": {
                                  "line": 111,
                                  "column": 24
                                }
                              },
                              "value": false
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 4136,
                      "end": 4185,
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 8
                        },
                        "end": {
                          "line": 113,
                          "column": 57
                        }
                      },
                      "argument": {
                        "type": "BinaryExpression",
                        "start": 4143,
                        "end": 4184,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 15
                          },
                          "end": {
                            "line": 113,
                            "column": 56
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 4143,
                          "end": 4180,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 15
                            },
                            "end": {
                              "line": 113,
                              "column": 52
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4143,
                            "end": 4173,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 15
                              },
                              "end": {
                                "line": 113,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 4143,
                              "end": 4158,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 15
                                },
                                "end": {
                                  "line": 113,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4143,
                                "end": 4147,
                                "loc": {
                                  "start": {
                                    "line": 113,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 113,
                                    "column": 19
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4148,
                                "end": 4158,
                                "loc": {
                                  "start": {
                                    "line": 113,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 113,
                                    "column": 30
                                  },
                                  "identifierName": "components"
                                },
                                "name": "components"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4159,
                              "end": 4172,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 31
                                },
                                "end": {
                                  "line": 113,
                                  "column": 44
                                },
                                "identifierName": "componentName"
                              },
                              "name": "componentName"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4174,
                            "end": 4180,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 46
                              },
                              "end": {
                                "line": 113,
                                "column": 52
                              },
                              "identifierName": "length"
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": ">",
                        "right": {
                          "type": "NumericLiteral",
                          "start": 4183,
                          "end": 4184,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 55
                            },
                            "end": {
                              "line": 113,
                              "column": 56
                            }
                          },
                          "extra": {
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "value": 0
                        }
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Returns a boolean on if there is a component of type {componentName}.\n     * \n     * @param {string} componentName Name of the component type to search for.\n     * \n     * @returns {boolean} true if there is at least one component of this type.\n     ",
                    "start": 3740,
                    "end": 4003,
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 4
                      },
                      "end": {
                        "line": 108,
                        "column": 7
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Returns a component of type {componentName}. The second parameter can determine which \n     * Component of that type to return if there are more than 1. \n     * \n     * @param {string} componentName Name of the component type to return.\n     * @param {*} index Index of the component to get. Defaults to first component.\n     ",
                    "start": 4197,
                    "end": 4536,
                    "loc": {
                      "start": {
                        "line": 116,
                        "column": 4
                      },
                      "end": {
                        "line": 122,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 4541,
                "end": 4730,
                "loc": {
                  "start": {
                    "line": 123,
                    "column": 4
                  },
                  "end": {
                    "line": 128,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 4541,
                  "end": 4553,
                  "loc": {
                    "start": {
                      "line": 123,
                      "column": 4
                    },
                    "end": {
                      "line": 123,
                      "column": 16
                    },
                    "identifierName": "getComponent"
                  },
                  "name": "getComponent",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4554,
                    "end": 4567,
                    "loc": {
                      "start": {
                        "line": 123,
                        "column": 17
                      },
                      "end": {
                        "line": 123,
                        "column": 30
                      },
                      "identifierName": "componentName"
                    },
                    "name": "componentName"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 4569,
                    "end": 4578,
                    "loc": {
                      "start": {
                        "line": 123,
                        "column": 32
                      },
                      "end": {
                        "line": 123,
                        "column": 41
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 4569,
                      "end": 4574,
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 32
                        },
                        "end": {
                          "line": 123,
                          "column": 37
                        },
                        "identifierName": "index"
                      },
                      "name": "index"
                    },
                    "right": {
                      "type": "NumericLiteral",
                      "start": 4577,
                      "end": 4578,
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 40
                        },
                        "end": {
                          "line": 123,
                          "column": 41
                        }
                      },
                      "extra": {
                        "rawValue": 0,
                        "raw": "0"
                      },
                      "value": 0
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4580,
                  "end": 4730,
                  "loc": {
                    "start": {
                      "line": 123,
                      "column": 43
                    },
                    "end": {
                      "line": 128,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 4590,
                      "end": 4670,
                      "loc": {
                        "start": {
                          "line": 124,
                          "column": 8
                        },
                        "end": {
                          "line": 126,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 4594,
                        "end": 4632,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 12
                          },
                          "end": {
                            "line": 124,
                            "column": 50
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 4594,
                          "end": 4624,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 12
                            },
                            "end": {
                              "line": 124,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4594,
                            "end": 4609,
                            "loc": {
                              "start": {
                                "line": 124,
                                "column": 12
                              },
                              "end": {
                                "line": 124,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4594,
                              "end": 4598,
                              "loc": {
                                "start": {
                                  "line": 124,
                                  "column": 12
                                },
                                "end": {
                                  "line": 124,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4599,
                              "end": 4609,
                              "loc": {
                                "start": {
                                  "line": 124,
                                  "column": 17
                                },
                                "end": {
                                  "line": 124,
                                  "column": 27
                                },
                                "identifierName": "components"
                              },
                              "name": "components"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4610,
                            "end": 4623,
                            "loc": {
                              "start": {
                                "line": 124,
                                "column": 28
                              },
                              "end": {
                                "line": 124,
                                "column": 41
                              },
                              "identifierName": "componentName"
                            },
                            "name": "componentName"
                          },
                          "computed": true
                        },
                        "operator": "==",
                        "right": {
                          "type": "NullLiteral",
                          "start": 4628,
                          "end": 4632,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 46
                            },
                            "end": {
                              "line": 124,
                              "column": 50
                            }
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 4634,
                        "end": 4670,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 52
                          },
                          "end": {
                            "line": 126,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 4648,
                            "end": 4660,
                            "loc": {
                              "start": {
                                "line": 125,
                                "column": 12
                              },
                              "end": {
                                "line": 125,
                                "column": 24
                              }
                            },
                            "argument": {
                              "type": "NullLiteral",
                              "start": 4655,
                              "end": 4659,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 19
                                },
                                "end": {
                                  "line": 125,
                                  "column": 23
                                }
                              }
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 4679,
                      "end": 4724,
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 8
                        },
                        "end": {
                          "line": 127,
                          "column": 53
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 4686,
                        "end": 4723,
                        "loc": {
                          "start": {
                            "line": 127,
                            "column": 15
                          },
                          "end": {
                            "line": 127,
                            "column": 52
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4686,
                          "end": 4716,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 15
                            },
                            "end": {
                              "line": 127,
                              "column": 45
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4686,
                            "end": 4701,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 15
                              },
                              "end": {
                                "line": 127,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4686,
                              "end": 4690,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 15
                                },
                                "end": {
                                  "line": 127,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4691,
                              "end": 4701,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 20
                                },
                                "end": {
                                  "line": 127,
                                  "column": 30
                                },
                                "identifierName": "components"
                              },
                              "name": "components"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4702,
                            "end": 4715,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 31
                              },
                              "end": {
                                "line": 127,
                                "column": 44
                              },
                              "identifierName": "componentName"
                            },
                            "name": "componentName"
                          },
                          "computed": true
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4717,
                          "end": 4722,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 46
                            },
                            "end": {
                              "line": 127,
                              "column": 51
                            },
                            "identifierName": "index"
                          },
                          "name": "index"
                        },
                        "computed": true
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Returns a component of type {componentName}. The second parameter can determine which \n     * Component of that type to return if there are more than 1. \n     * \n     * @param {string} componentName Name of the component type to return.\n     * @param {*} index Index of the component to get. Defaults to first component.\n     ",
                    "start": 4197,
                    "end": 4536,
                    "loc": {
                      "start": {
                        "line": 116,
                        "column": 4
                      },
                      "end": {
                        "line": 122,
                        "column": 7
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Updates all components on this GameObject.\n     ",
                    "start": 4740,
                    "end": 4801,
                    "loc": {
                      "start": {
                        "line": 130,
                        "column": 4
                      },
                      "end": {
                        "line": 132,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 4806,
                "end": 5148,
                "loc": {
                  "start": {
                    "line": 133,
                    "column": 4
                  },
                  "end": {
                    "line": 141,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 4806,
                  "end": 4822,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 4
                    },
                    "end": {
                      "line": 133,
                      "column": 20
                    },
                    "identifierName": "updateComponents"
                  },
                  "name": "updateComponents",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4825,
                  "end": 5148,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 23
                    },
                    "end": {
                      "line": 141,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 4835,
                      "end": 4880,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 8
                        },
                        "end": {
                          "line": 134,
                          "column": 53
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 4839,
                          "end": 4879,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 12
                            },
                            "end": {
                              "line": 134,
                              "column": 52
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 4839,
                            "end": 4848,
                            "loc": {
                              "start": {
                                "line": 134,
                                "column": 12
                              },
                              "end": {
                                "line": 134,
                                "column": 21
                              },
                              "identifierName": "compTypes"
                            },
                            "name": "compTypes"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 4851,
                            "end": 4879,
                            "loc": {
                              "start": {
                                "line": 134,
                                "column": 24
                              },
                              "end": {
                                "line": 134,
                                "column": 52
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 4851,
                              "end": 4862,
                              "loc": {
                                "start": {
                                  "line": 134,
                                  "column": 24
                                },
                                "end": {
                                  "line": 134,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 4851,
                                "end": 4857,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 30
                                  },
                                  "identifierName": "Object"
                                },
                                "name": "Object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4858,
                                "end": 4862,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 35
                                  },
                                  "identifierName": "keys"
                                },
                                "name": "keys"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 4863,
                                "end": 4878,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 4863,
                                  "end": 4867,
                                  "loc": {
                                    "start": {
                                      "line": 134,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 134,
                                      "column": 40
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4868,
                                  "end": 4878,
                                  "loc": {
                                    "start": {
                                      "line": 134,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 134,
                                      "column": 51
                                    },
                                    "identifierName": "components"
                                  },
                                  "name": "components"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ForStatement",
                      "start": 4889,
                      "end": 5142,
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 8
                        },
                        "end": {
                          "line": 140,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 4894,
                        "end": 4903,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 13
                          },
                          "end": {
                            "line": 135,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 4898,
                            "end": 4903,
                            "loc": {
                              "start": {
                                "line": 135,
                                "column": 17
                              },
                              "end": {
                                "line": 135,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 4898,
                              "end": 4899,
                              "loc": {
                                "start": {
                                  "line": 135,
                                  "column": 17
                                },
                                "end": {
                                  "line": 135,
                                  "column": 18
                                },
                                "identifierName": "i"
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "NumericLiteral",
                              "start": 4902,
                              "end": 4903,
                              "loc": {
                                "start": {
                                  "line": 135,
                                  "column": 21
                                },
                                "end": {
                                  "line": 135,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "value": 0
                            }
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 4905,
                        "end": 4925,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 24
                          },
                          "end": {
                            "line": 135,
                            "column": 44
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 4905,
                          "end": 4906,
                          "loc": {
                            "start": {
                              "line": 135,
                              "column": 24
                            },
                            "end": {
                              "line": 135,
                              "column": 25
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "MemberExpression",
                          "start": 4909,
                          "end": 4925,
                          "loc": {
                            "start": {
                              "line": 135,
                              "column": 28
                            },
                            "end": {
                              "line": 135,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 4909,
                            "end": 4918,
                            "loc": {
                              "start": {
                                "line": 135,
                                "column": 28
                              },
                              "end": {
                                "line": 135,
                                "column": 37
                              },
                              "identifierName": "compTypes"
                            },
                            "name": "compTypes"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4919,
                            "end": 4925,
                            "loc": {
                              "start": {
                                "line": 135,
                                "column": 38
                              },
                              "end": {
                                "line": 135,
                                "column": 44
                              },
                              "identifierName": "length"
                            },
                            "name": "length"
                          },
                          "computed": false
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 4927,
                        "end": 4930,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 46
                          },
                          "end": {
                            "line": 135,
                            "column": 49
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 4927,
                          "end": 4928,
                          "loc": {
                            "start": {
                              "line": 135,
                              "column": 46
                            },
                            "end": {
                              "line": 135,
                              "column": 47
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 4932,
                        "end": 5142,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 51
                          },
                          "end": {
                            "line": 140,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 4946,
                            "end": 4978,
                            "loc": {
                              "start": {
                                "line": 136,
                                "column": 12
                              },
                              "end": {
                                "line": 136,
                                "column": 44
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 4950,
                                "end": 4977,
                                "loc": {
                                  "start": {
                                    "line": 136,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 136,
                                    "column": 43
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 4950,
                                  "end": 4962,
                                  "loc": {
                                    "start": {
                                      "line": 136,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 136,
                                      "column": 28
                                    },
                                    "identifierName": "thisCompType"
                                  },
                                  "name": "thisCompType"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 4965,
                                  "end": 4977,
                                  "loc": {
                                    "start": {
                                      "line": 136,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 136,
                                      "column": 43
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4965,
                                    "end": 4974,
                                    "loc": {
                                      "start": {
                                        "line": 136,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 136,
                                        "column": 40
                                      },
                                      "identifierName": "compTypes"
                                    },
                                    "name": "compTypes"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4975,
                                    "end": 4976,
                                    "loc": {
                                      "start": {
                                        "line": 136,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 136,
                                        "column": 42
                                      },
                                      "identifierName": "i"
                                    },
                                    "name": "i"
                                  },
                                  "computed": true
                                }
                              }
                            ],
                            "kind": "let"
                          },
                          {
                            "type": "ForStatement",
                            "start": 4991,
                            "end": 5132,
                            "loc": {
                              "start": {
                                "line": 137,
                                "column": 12
                              },
                              "end": {
                                "line": 139,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 4996,
                              "end": 5006,
                              "loc": {
                                "start": {
                                  "line": 137,
                                  "column": 17
                                },
                                "end": {
                                  "line": 137,
                                  "column": 27
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 5000,
                                  "end": 5006,
                                  "loc": {
                                    "start": {
                                      "line": 137,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 137,
                                      "column": 27
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 5000,
                                    "end": 5002,
                                    "loc": {
                                      "start": {
                                        "line": 137,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 137,
                                        "column": 23
                                      },
                                      "identifierName": "ii"
                                    },
                                    "name": "ii"
                                  },
                                  "init": {
                                    "type": "NumericLiteral",
                                    "start": 5005,
                                    "end": 5006,
                                    "loc": {
                                      "start": {
                                        "line": 137,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 137,
                                        "column": 27
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "value": 0
                                  }
                                }
                              ],
                              "kind": "let"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 5008,
                              "end": 5049,
                              "loc": {
                                "start": {
                                  "line": 137,
                                  "column": 29
                                },
                                "end": {
                                  "line": 137,
                                  "column": 70
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 5008,
                                "end": 5010,
                                "loc": {
                                  "start": {
                                    "line": 137,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 137,
                                    "column": 31
                                  },
                                  "identifierName": "ii"
                                },
                                "name": "ii"
                              },
                              "operator": "<",
                              "right": {
                                "type": "MemberExpression",
                                "start": 5013,
                                "end": 5049,
                                "loc": {
                                  "start": {
                                    "line": 137,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 137,
                                    "column": 70
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 5013,
                                  "end": 5042,
                                  "loc": {
                                    "start": {
                                      "line": 137,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 137,
                                      "column": 63
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5013,
                                    "end": 5028,
                                    "loc": {
                                      "start": {
                                        "line": 137,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 137,
                                        "column": 49
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5013,
                                      "end": 5017,
                                      "loc": {
                                        "start": {
                                          "line": 137,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 137,
                                          "column": 38
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5018,
                                      "end": 5028,
                                      "loc": {
                                        "start": {
                                          "line": 137,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 137,
                                          "column": 49
                                        },
                                        "identifierName": "components"
                                      },
                                      "name": "components"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5029,
                                    "end": 5041,
                                    "loc": {
                                      "start": {
                                        "line": 137,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 137,
                                        "column": 62
                                      },
                                      "identifierName": "thisCompType"
                                    },
                                    "name": "thisCompType"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5043,
                                  "end": 5049,
                                  "loc": {
                                    "start": {
                                      "line": 137,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 137,
                                      "column": 70
                                    },
                                    "identifierName": "length"
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              }
                            },
                            "update": {
                              "type": "UpdateExpression",
                              "start": 5051,
                              "end": 5055,
                              "loc": {
                                "start": {
                                  "line": 137,
                                  "column": 72
                                },
                                "end": {
                                  "line": 137,
                                  "column": 76
                                }
                              },
                              "operator": "++",
                              "prefix": false,
                              "argument": {
                                "type": "Identifier",
                                "start": 5051,
                                "end": 5053,
                                "loc": {
                                  "start": {
                                    "line": 137,
                                    "column": 72
                                  },
                                  "end": {
                                    "line": 137,
                                    "column": 74
                                  },
                                  "identifierName": "ii"
                                },
                                "name": "ii"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 5057,
                              "end": 5132,
                              "loc": {
                                "start": {
                                  "line": 137,
                                  "column": 78
                                },
                                "end": {
                                  "line": 139,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 5075,
                                  "end": 5118,
                                  "loc": {
                                    "start": {
                                      "line": 138,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 138,
                                      "column": 59
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 5075,
                                    "end": 5117,
                                    "loc": {
                                      "start": {
                                        "line": 138,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 138,
                                        "column": 58
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 5075,
                                      "end": 5115,
                                      "loc": {
                                        "start": {
                                          "line": 138,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 138,
                                          "column": 56
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 5075,
                                        "end": 5108,
                                        "loc": {
                                          "start": {
                                            "line": 138,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 138,
                                            "column": 49
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 5075,
                                          "end": 5104,
                                          "loc": {
                                            "start": {
                                              "line": 138,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 138,
                                              "column": 45
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 5075,
                                            "end": 5090,
                                            "loc": {
                                              "start": {
                                                "line": 138,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 138,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 5075,
                                              "end": 5079,
                                              "loc": {
                                                "start": {
                                                  "line": 138,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 138,
                                                  "column": 20
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 5080,
                                              "end": 5090,
                                              "loc": {
                                                "start": {
                                                  "line": 138,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 138,
                                                  "column": 31
                                                },
                                                "identifierName": "components"
                                              },
                                              "name": "components"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5091,
                                            "end": 5103,
                                            "loc": {
                                              "start": {
                                                "line": 138,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 138,
                                                "column": 44
                                              },
                                              "identifierName": "thisCompType"
                                            },
                                            "name": "thisCompType"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5105,
                                          "end": 5107,
                                          "loc": {
                                            "start": {
                                              "line": 138,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 138,
                                              "column": 48
                                            },
                                            "identifierName": "ii"
                                          },
                                          "name": "ii"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5109,
                                        "end": 5115,
                                        "loc": {
                                          "start": {
                                            "line": 138,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 138,
                                            "column": 56
                                          },
                                          "identifierName": "update"
                                        },
                                        "name": "update"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ],
                              "directives": []
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  ],
                  "directives": []
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Updates all components on this GameObject.\n     ",
                    "start": 4740,
                    "end": 4801,
                    "loc": {
                      "start": {
                        "line": 130,
                        "column": 4
                      },
                      "end": {
                        "line": 132,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 5154,
                "end": 5486,
                "loc": {
                  "start": {
                    "line": 143,
                    "column": 4
                  },
                  "end": {
                    "line": 151,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 5154,
                  "end": 5161,
                  "loc": {
                    "start": {
                      "line": 143,
                      "column": 4
                    },
                    "end": {
                      "line": 143,
                      "column": 11
                    },
                    "identifierName": "onPause"
                  },
                  "name": "onPause"
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 5164,
                  "end": 5486,
                  "loc": {
                    "start": {
                      "line": 143,
                      "column": 14
                    },
                    "end": {
                      "line": 151,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 5174,
                      "end": 5219,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 8
                        },
                        "end": {
                          "line": 144,
                          "column": 53
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5178,
                          "end": 5218,
                          "loc": {
                            "start": {
                              "line": 144,
                              "column": 12
                            },
                            "end": {
                              "line": 144,
                              "column": 52
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5178,
                            "end": 5187,
                            "loc": {
                              "start": {
                                "line": 144,
                                "column": 12
                              },
                              "end": {
                                "line": 144,
                                "column": 21
                              },
                              "identifierName": "compTypes"
                            },
                            "name": "compTypes"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 5190,
                            "end": 5218,
                            "loc": {
                              "start": {
                                "line": 144,
                                "column": 24
                              },
                              "end": {
                                "line": 144,
                                "column": 52
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5190,
                              "end": 5201,
                              "loc": {
                                "start": {
                                  "line": 144,
                                  "column": 24
                                },
                                "end": {
                                  "line": 144,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5190,
                                "end": 5196,
                                "loc": {
                                  "start": {
                                    "line": 144,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 144,
                                    "column": 30
                                  },
                                  "identifierName": "Object"
                                },
                                "name": "Object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5197,
                                "end": 5201,
                                "loc": {
                                  "start": {
                                    "line": 144,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 144,
                                    "column": 35
                                  },
                                  "identifierName": "keys"
                                },
                                "name": "keys"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 5202,
                                "end": 5217,
                                "loc": {
                                  "start": {
                                    "line": 144,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 144,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5202,
                                  "end": 5206,
                                  "loc": {
                                    "start": {
                                      "line": 144,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 144,
                                      "column": 40
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5207,
                                  "end": 5217,
                                  "loc": {
                                    "start": {
                                      "line": 144,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 144,
                                      "column": 51
                                    },
                                    "identifierName": "components"
                                  },
                                  "name": "components"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ForStatement",
                      "start": 5228,
                      "end": 5480,
                      "loc": {
                        "start": {
                          "line": 145,
                          "column": 8
                        },
                        "end": {
                          "line": 150,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 5233,
                        "end": 5242,
                        "loc": {
                          "start": {
                            "line": 145,
                            "column": 13
                          },
                          "end": {
                            "line": 145,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 5237,
                            "end": 5242,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 17
                              },
                              "end": {
                                "line": 145,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 5237,
                              "end": 5238,
                              "loc": {
                                "start": {
                                  "line": 145,
                                  "column": 17
                                },
                                "end": {
                                  "line": 145,
                                  "column": 18
                                },
                                "identifierName": "i"
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "NumericLiteral",
                              "start": 5241,
                              "end": 5242,
                              "loc": {
                                "start": {
                                  "line": 145,
                                  "column": 21
                                },
                                "end": {
                                  "line": 145,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "value": 0
                            }
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5244,
                        "end": 5264,
                        "loc": {
                          "start": {
                            "line": 145,
                            "column": 24
                          },
                          "end": {
                            "line": 145,
                            "column": 44
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 5244,
                          "end": 5245,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 24
                            },
                            "end": {
                              "line": 145,
                              "column": 25
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "MemberExpression",
                          "start": 5248,
                          "end": 5264,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 28
                            },
                            "end": {
                              "line": 145,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5248,
                            "end": 5257,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 28
                              },
                              "end": {
                                "line": 145,
                                "column": 37
                              },
                              "identifierName": "compTypes"
                            },
                            "name": "compTypes"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5258,
                            "end": 5264,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 38
                              },
                              "end": {
                                "line": 145,
                                "column": 44
                              },
                              "identifierName": "length"
                            },
                            "name": "length"
                          },
                          "computed": false
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 5266,
                        "end": 5269,
                        "loc": {
                          "start": {
                            "line": 145,
                            "column": 46
                          },
                          "end": {
                            "line": 145,
                            "column": 49
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 5266,
                          "end": 5267,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 46
                            },
                            "end": {
                              "line": 145,
                              "column": 47
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 5271,
                        "end": 5480,
                        "loc": {
                          "start": {
                            "line": 145,
                            "column": 51
                          },
                          "end": {
                            "line": 150,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 5285,
                            "end": 5317,
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 12
                              },
                              "end": {
                                "line": 146,
                                "column": 44
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 5289,
                                "end": 5316,
                                "loc": {
                                  "start": {
                                    "line": 146,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 146,
                                    "column": 43
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 5289,
                                  "end": 5301,
                                  "loc": {
                                    "start": {
                                      "line": 146,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 146,
                                      "column": 28
                                    },
                                    "identifierName": "thisCompType"
                                  },
                                  "name": "thisCompType"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 5304,
                                  "end": 5316,
                                  "loc": {
                                    "start": {
                                      "line": 146,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 146,
                                      "column": 43
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5304,
                                    "end": 5313,
                                    "loc": {
                                      "start": {
                                        "line": 146,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 146,
                                        "column": 40
                                      },
                                      "identifierName": "compTypes"
                                    },
                                    "name": "compTypes"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5314,
                                    "end": 5315,
                                    "loc": {
                                      "start": {
                                        "line": 146,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 146,
                                        "column": 42
                                      },
                                      "identifierName": "i"
                                    },
                                    "name": "i"
                                  },
                                  "computed": true
                                }
                              }
                            ],
                            "kind": "let"
                          },
                          {
                            "type": "ForStatement",
                            "start": 5330,
                            "end": 5470,
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 12
                              },
                              "end": {
                                "line": 149,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 5335,
                              "end": 5345,
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 17
                                },
                                "end": {
                                  "line": 147,
                                  "column": 27
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 5339,
                                  "end": 5345,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 27
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 5339,
                                    "end": 5341,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 23
                                      },
                                      "identifierName": "ii"
                                    },
                                    "name": "ii"
                                  },
                                  "init": {
                                    "type": "NumericLiteral",
                                    "start": 5344,
                                    "end": 5345,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 27
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "value": 0
                                  }
                                }
                              ],
                              "kind": "let"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 5347,
                              "end": 5388,
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 29
                                },
                                "end": {
                                  "line": 147,
                                  "column": 70
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 5347,
                                "end": 5349,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 31
                                  },
                                  "identifierName": "ii"
                                },
                                "name": "ii"
                              },
                              "operator": "<",
                              "right": {
                                "type": "MemberExpression",
                                "start": 5352,
                                "end": 5388,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 70
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 5352,
                                  "end": 5381,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 63
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5352,
                                    "end": 5367,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 49
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5352,
                                      "end": 5356,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 38
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5357,
                                      "end": 5367,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 49
                                        },
                                        "identifierName": "components"
                                      },
                                      "name": "components"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5368,
                                    "end": 5380,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 62
                                      },
                                      "identifierName": "thisCompType"
                                    },
                                    "name": "thisCompType"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5382,
                                  "end": 5388,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 70
                                    },
                                    "identifierName": "length"
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              }
                            },
                            "update": {
                              "type": "UpdateExpression",
                              "start": 5390,
                              "end": 5394,
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 72
                                },
                                "end": {
                                  "line": 147,
                                  "column": 76
                                }
                              },
                              "operator": "++",
                              "prefix": false,
                              "argument": {
                                "type": "Identifier",
                                "start": 5390,
                                "end": 5392,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 72
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 74
                                  },
                                  "identifierName": "ii"
                                },
                                "name": "ii"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 5396,
                              "end": 5470,
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 78
                                },
                                "end": {
                                  "line": 149,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 5414,
                                  "end": 5456,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 58
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 5414,
                                    "end": 5455,
                                    "loc": {
                                      "start": {
                                        "line": 148,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 148,
                                        "column": 57
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 5414,
                                      "end": 5453,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 55
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 5414,
                                        "end": 5447,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 49
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 5414,
                                          "end": 5443,
                                          "loc": {
                                            "start": {
                                              "line": 148,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 148,
                                              "column": 45
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 5414,
                                            "end": 5429,
                                            "loc": {
                                              "start": {
                                                "line": 148,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 148,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 5414,
                                              "end": 5418,
                                              "loc": {
                                                "start": {
                                                  "line": 148,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 148,
                                                  "column": 20
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 5419,
                                              "end": 5429,
                                              "loc": {
                                                "start": {
                                                  "line": 148,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 148,
                                                  "column": 31
                                                },
                                                "identifierName": "components"
                                              },
                                              "name": "components"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5430,
                                            "end": 5442,
                                            "loc": {
                                              "start": {
                                                "line": 148,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 148,
                                                "column": 44
                                              },
                                              "identifierName": "thisCompType"
                                            },
                                            "name": "thisCompType"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5444,
                                          "end": 5446,
                                          "loc": {
                                            "start": {
                                              "line": 148,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 148,
                                              "column": 48
                                            },
                                            "identifierName": "ii"
                                          },
                                          "name": "ii"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5448,
                                        "end": 5453,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 55
                                          },
                                          "identifierName": "pause"
                                        },
                                        "name": "pause"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ],
                              "directives": []
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  ],
                  "directives": []
                }
              },
              {
                "type": "ClassMethod",
                "start": 5492,
                "end": 5828,
                "loc": {
                  "start": {
                    "line": 153,
                    "column": 4
                  },
                  "end": {
                    "line": 161,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 5492,
                  "end": 5501,
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 4
                    },
                    "end": {
                      "line": 153,
                      "column": 13
                    },
                    "identifierName": "onUnpause"
                  },
                  "name": "onUnpause"
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 5504,
                  "end": 5828,
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 16
                    },
                    "end": {
                      "line": 161,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 5514,
                      "end": 5559,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 8
                        },
                        "end": {
                          "line": 154,
                          "column": 53
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5518,
                          "end": 5558,
                          "loc": {
                            "start": {
                              "line": 154,
                              "column": 12
                            },
                            "end": {
                              "line": 154,
                              "column": 52
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5518,
                            "end": 5527,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 12
                              },
                              "end": {
                                "line": 154,
                                "column": 21
                              },
                              "identifierName": "compTypes"
                            },
                            "name": "compTypes"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 5530,
                            "end": 5558,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 24
                              },
                              "end": {
                                "line": 154,
                                "column": 52
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5530,
                              "end": 5541,
                              "loc": {
                                "start": {
                                  "line": 154,
                                  "column": 24
                                },
                                "end": {
                                  "line": 154,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5530,
                                "end": 5536,
                                "loc": {
                                  "start": {
                                    "line": 154,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 154,
                                    "column": 30
                                  },
                                  "identifierName": "Object"
                                },
                                "name": "Object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5537,
                                "end": 5541,
                                "loc": {
                                  "start": {
                                    "line": 154,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 154,
                                    "column": 35
                                  },
                                  "identifierName": "keys"
                                },
                                "name": "keys"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 5542,
                                "end": 5557,
                                "loc": {
                                  "start": {
                                    "line": 154,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 154,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5542,
                                  "end": 5546,
                                  "loc": {
                                    "start": {
                                      "line": 154,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 154,
                                      "column": 40
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5547,
                                  "end": 5557,
                                  "loc": {
                                    "start": {
                                      "line": 154,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 154,
                                      "column": 51
                                    },
                                    "identifierName": "components"
                                  },
                                  "name": "components"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ForStatement",
                      "start": 5568,
                      "end": 5822,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 8
                        },
                        "end": {
                          "line": 160,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 5573,
                        "end": 5582,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 13
                          },
                          "end": {
                            "line": 155,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 5577,
                            "end": 5582,
                            "loc": {
                              "start": {
                                "line": 155,
                                "column": 17
                              },
                              "end": {
                                "line": 155,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 5577,
                              "end": 5578,
                              "loc": {
                                "start": {
                                  "line": 155,
                                  "column": 17
                                },
                                "end": {
                                  "line": 155,
                                  "column": 18
                                },
                                "identifierName": "i"
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "NumericLiteral",
                              "start": 5581,
                              "end": 5582,
                              "loc": {
                                "start": {
                                  "line": 155,
                                  "column": 21
                                },
                                "end": {
                                  "line": 155,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "value": 0
                            }
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5584,
                        "end": 5604,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 24
                          },
                          "end": {
                            "line": 155,
                            "column": 44
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 5584,
                          "end": 5585,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 24
                            },
                            "end": {
                              "line": 155,
                              "column": 25
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "MemberExpression",
                          "start": 5588,
                          "end": 5604,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 28
                            },
                            "end": {
                              "line": 155,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5588,
                            "end": 5597,
                            "loc": {
                              "start": {
                                "line": 155,
                                "column": 28
                              },
                              "end": {
                                "line": 155,
                                "column": 37
                              },
                              "identifierName": "compTypes"
                            },
                            "name": "compTypes"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5598,
                            "end": 5604,
                            "loc": {
                              "start": {
                                "line": 155,
                                "column": 38
                              },
                              "end": {
                                "line": 155,
                                "column": 44
                              },
                              "identifierName": "length"
                            },
                            "name": "length"
                          },
                          "computed": false
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 5606,
                        "end": 5609,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 46
                          },
                          "end": {
                            "line": 155,
                            "column": 49
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 5606,
                          "end": 5607,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 46
                            },
                            "end": {
                              "line": 155,
                              "column": 47
                            },
                            "identifierName": "i"
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 5611,
                        "end": 5822,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 51
                          },
                          "end": {
                            "line": 160,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 5625,
                            "end": 5657,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 12
                              },
                              "end": {
                                "line": 156,
                                "column": 44
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 5629,
                                "end": 5656,
                                "loc": {
                                  "start": {
                                    "line": 156,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 156,
                                    "column": 43
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 5629,
                                  "end": 5641,
                                  "loc": {
                                    "start": {
                                      "line": 156,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 156,
                                      "column": 28
                                    },
                                    "identifierName": "thisCompType"
                                  },
                                  "name": "thisCompType"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 5644,
                                  "end": 5656,
                                  "loc": {
                                    "start": {
                                      "line": 156,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 156,
                                      "column": 43
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5644,
                                    "end": 5653,
                                    "loc": {
                                      "start": {
                                        "line": 156,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 156,
                                        "column": 40
                                      },
                                      "identifierName": "compTypes"
                                    },
                                    "name": "compTypes"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5654,
                                    "end": 5655,
                                    "loc": {
                                      "start": {
                                        "line": 156,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 156,
                                        "column": 42
                                      },
                                      "identifierName": "i"
                                    },
                                    "name": "i"
                                  },
                                  "computed": true
                                }
                              }
                            ],
                            "kind": "let"
                          },
                          {
                            "type": "ForStatement",
                            "start": 5670,
                            "end": 5812,
                            "loc": {
                              "start": {
                                "line": 157,
                                "column": 12
                              },
                              "end": {
                                "line": 159,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 5675,
                              "end": 5685,
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 17
                                },
                                "end": {
                                  "line": 157,
                                  "column": 27
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 5679,
                                  "end": 5685,
                                  "loc": {
                                    "start": {
                                      "line": 157,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 157,
                                      "column": 27
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 5679,
                                    "end": 5681,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 23
                                      },
                                      "identifierName": "ii"
                                    },
                                    "name": "ii"
                                  },
                                  "init": {
                                    "type": "NumericLiteral",
                                    "start": 5684,
                                    "end": 5685,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 27
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "value": 0
                                  }
                                }
                              ],
                              "kind": "let"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 5687,
                              "end": 5728,
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 29
                                },
                                "end": {
                                  "line": 157,
                                  "column": 70
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 5687,
                                "end": 5689,
                                "loc": {
                                  "start": {
                                    "line": 157,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 157,
                                    "column": 31
                                  },
                                  "identifierName": "ii"
                                },
                                "name": "ii"
                              },
                              "operator": "<",
                              "right": {
                                "type": "MemberExpression",
                                "start": 5692,
                                "end": 5728,
                                "loc": {
                                  "start": {
                                    "line": 157,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 157,
                                    "column": 70
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 5692,
                                  "end": 5721,
                                  "loc": {
                                    "start": {
                                      "line": 157,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 157,
                                      "column": 63
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5692,
                                    "end": 5707,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 49
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5692,
                                      "end": 5696,
                                      "loc": {
                                        "start": {
                                          "line": 157,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 157,
                                          "column": 38
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5697,
                                      "end": 5707,
                                      "loc": {
                                        "start": {
                                          "line": 157,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 157,
                                          "column": 49
                                        },
                                        "identifierName": "components"
                                      },
                                      "name": "components"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5708,
                                    "end": 5720,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 62
                                      },
                                      "identifierName": "thisCompType"
                                    },
                                    "name": "thisCompType"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5722,
                                  "end": 5728,
                                  "loc": {
                                    "start": {
                                      "line": 157,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 157,
                                      "column": 70
                                    },
                                    "identifierName": "length"
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              }
                            },
                            "update": {
                              "type": "UpdateExpression",
                              "start": 5730,
                              "end": 5734,
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 72
                                },
                                "end": {
                                  "line": 157,
                                  "column": 76
                                }
                              },
                              "operator": "++",
                              "prefix": false,
                              "argument": {
                                "type": "Identifier",
                                "start": 5730,
                                "end": 5732,
                                "loc": {
                                  "start": {
                                    "line": 157,
                                    "column": 72
                                  },
                                  "end": {
                                    "line": 157,
                                    "column": 74
                                  },
                                  "identifierName": "ii"
                                },
                                "name": "ii"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 5736,
                              "end": 5812,
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 78
                                },
                                "end": {
                                  "line": 159,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 5754,
                                  "end": 5798,
                                  "loc": {
                                    "start": {
                                      "line": 158,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 158,
                                      "column": 60
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 5754,
                                    "end": 5797,
                                    "loc": {
                                      "start": {
                                        "line": 158,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 158,
                                        "column": 59
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 5754,
                                      "end": 5795,
                                      "loc": {
                                        "start": {
                                          "line": 158,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 158,
                                          "column": 57
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 5754,
                                        "end": 5787,
                                        "loc": {
                                          "start": {
                                            "line": 158,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 158,
                                            "column": 49
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 5754,
                                          "end": 5783,
                                          "loc": {
                                            "start": {
                                              "line": 158,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 158,
                                              "column": 45
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 5754,
                                            "end": 5769,
                                            "loc": {
                                              "start": {
                                                "line": 158,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 158,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 5754,
                                              "end": 5758,
                                              "loc": {
                                                "start": {
                                                  "line": 158,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 158,
                                                  "column": 20
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 5759,
                                              "end": 5769,
                                              "loc": {
                                                "start": {
                                                  "line": 158,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 158,
                                                  "column": 31
                                                },
                                                "identifierName": "components"
                                              },
                                              "name": "components"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5770,
                                            "end": 5782,
                                            "loc": {
                                              "start": {
                                                "line": 158,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 158,
                                                "column": 44
                                              },
                                              "identifierName": "thisCompType"
                                            },
                                            "name": "thisCompType"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5784,
                                          "end": 5786,
                                          "loc": {
                                            "start": {
                                              "line": 158,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 158,
                                              "column": 48
                                            },
                                            "identifierName": "ii"
                                          },
                                          "name": "ii"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5788,
                                        "end": 5795,
                                        "loc": {
                                          "start": {
                                            "line": 158,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 158,
                                            "column": 57
                                          },
                                          "identifierName": "unpause"
                                        },
                                        "name": "unpause"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ],
                              "directives": []
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Rewritten update() functions which is originally defined in Updateable.\n     * The GameObject adds a pre and post update function, and respective overrideable callbacks\n     * (onPreUpdate and onPostUpdate).\n     ",
                    "start": 5838,
                    "end": 6064,
                    "loc": {
                      "start": {
                        "line": 163,
                        "column": 4
                      },
                      "end": {
                        "line": 167,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 6069,
                "end": 6350,
                "loc": {
                  "start": {
                    "line": 168,
                    "column": 4
                  },
                  "end": {
                    "line": 181,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 6069,
                  "end": 6075,
                  "loc": {
                    "start": {
                      "line": 168,
                      "column": 4
                    },
                    "end": {
                      "line": 168,
                      "column": 10
                    },
                    "identifierName": "update"
                  },
                  "name": "update",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 6078,
                  "end": 6350,
                  "loc": {
                    "start": {
                      "line": 168,
                      "column": 13
                    },
                    "end": {
                      "line": 181,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 6088,
                      "end": 6127,
                      "loc": {
                        "start": {
                          "line": 169,
                          "column": 8
                        },
                        "end": {
                          "line": 170,
                          "column": 19
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 6092,
                        "end": 6106,
                        "loc": {
                          "start": {
                            "line": 169,
                            "column": 12
                          },
                          "end": {
                            "line": 169,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 6092,
                          "end": 6096,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 12
                            },
                            "end": {
                              "line": 169,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6097,
                          "end": 6106,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 17
                            },
                            "end": {
                              "line": 169,
                              "column": 26
                            },
                            "identifierName": "hasPaused"
                          },
                          "name": "hasPaused"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 6120,
                        "end": 6127,
                        "loc": {
                          "start": {
                            "line": 170,
                            "column": 12
                          },
                          "end": {
                            "line": 170,
                            "column": 19
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 6145,
                      "end": 6224,
                      "loc": {
                        "start": {
                          "line": 172,
                          "column": 8
                        },
                        "end": {
                          "line": 175,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 6149,
                        "end": 6165,
                        "loc": {
                          "start": {
                            "line": 172,
                            "column": 12
                          },
                          "end": {
                            "line": 172,
                            "column": 28
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 6150,
                          "end": 6165,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 13
                            },
                            "end": {
                              "line": 172,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6150,
                            "end": 6154,
                            "loc": {
                              "start": {
                                "line": 172,
                                "column": 13
                              },
                              "end": {
                                "line": 172,
                                "column": 17
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6155,
                            "end": 6165,
                            "loc": {
                              "start": {
                                "line": 172,
                                "column": 18
                              },
                              "end": {
                                "line": 172,
                                "column": 28
                              },
                              "identifierName": "hasStarted"
                            },
                            "name": "hasStarted"
                          },
                          "computed": false
                        },
                        "extra": {
                          "parenthesizedArgument": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 6167,
                        "end": 6224,
                        "loc": {
                          "start": {
                            "line": 172,
                            "column": 30
                          },
                          "end": {
                            "line": 175,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 6181,
                            "end": 6194,
                            "loc": {
                              "start": {
                                "line": 173,
                                "column": 12
                              },
                              "end": {
                                "line": 173,
                                "column": 25
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 6181,
                              "end": 6193,
                              "loc": {
                                "start": {
                                  "line": 173,
                                  "column": 12
                                },
                                "end": {
                                  "line": 173,
                                  "column": 24
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6181,
                                "end": 6191,
                                "loc": {
                                  "start": {
                                    "line": 173,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 173,
                                    "column": 22
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6181,
                                  "end": 6185,
                                  "loc": {
                                    "start": {
                                      "line": 173,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 173,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6186,
                                  "end": 6191,
                                  "loc": {
                                    "start": {
                                      "line": 173,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 173,
                                      "column": 22
                                    },
                                    "identifierName": "start"
                                  },
                                  "name": "start"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 6207,
                            "end": 6214,
                            "loc": {
                              "start": {
                                "line": 174,
                                "column": 12
                              },
                              "end": {
                                "line": 174,
                                "column": 19
                              }
                            },
                            "argument": null
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6242,
                      "end": 6259,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 8
                        },
                        "end": {
                          "line": 177,
                          "column": 25
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6242,
                        "end": 6258,
                        "loc": {
                          "start": {
                            "line": 177,
                            "column": 8
                          },
                          "end": {
                            "line": 177,
                            "column": 24
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6242,
                          "end": 6256,
                          "loc": {
                            "start": {
                              "line": 177,
                              "column": 8
                            },
                            "end": {
                              "line": 177,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6242,
                            "end": 6246,
                            "loc": {
                              "start": {
                                "line": 177,
                                "column": 8
                              },
                              "end": {
                                "line": 177,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6247,
                            "end": 6256,
                            "loc": {
                              "start": {
                                "line": 177,
                                "column": 13
                              },
                              "end": {
                                "line": 177,
                                "column": 22
                              },
                              "identifierName": "preUpdate"
                            },
                            "name": "preUpdate"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6268,
                      "end": 6284,
                      "loc": {
                        "start": {
                          "line": 178,
                          "column": 8
                        },
                        "end": {
                          "line": 178,
                          "column": 24
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6268,
                        "end": 6283,
                        "loc": {
                          "start": {
                            "line": 178,
                            "column": 8
                          },
                          "end": {
                            "line": 178,
                            "column": 23
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6268,
                          "end": 6281,
                          "loc": {
                            "start": {
                              "line": 178,
                              "column": 8
                            },
                            "end": {
                              "line": 178,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6268,
                            "end": 6272,
                            "loc": {
                              "start": {
                                "line": 178,
                                "column": 8
                              },
                              "end": {
                                "line": 178,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6273,
                            "end": 6281,
                            "loc": {
                              "start": {
                                "line": 178,
                                "column": 13
                              },
                              "end": {
                                "line": 178,
                                "column": 21
                              },
                              "identifierName": "onUpdate"
                            },
                            "name": "onUpdate"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6293,
                      "end": 6317,
                      "loc": {
                        "start": {
                          "line": 179,
                          "column": 8
                        },
                        "end": {
                          "line": 179,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6293,
                        "end": 6316,
                        "loc": {
                          "start": {
                            "line": 179,
                            "column": 8
                          },
                          "end": {
                            "line": 179,
                            "column": 31
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6293,
                          "end": 6314,
                          "loc": {
                            "start": {
                              "line": 179,
                              "column": 8
                            },
                            "end": {
                              "line": 179,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6293,
                            "end": 6297,
                            "loc": {
                              "start": {
                                "line": 179,
                                "column": 8
                              },
                              "end": {
                                "line": 179,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6298,
                            "end": 6314,
                            "loc": {
                              "start": {
                                "line": 179,
                                "column": 13
                              },
                              "end": {
                                "line": 179,
                                "column": 29
                              },
                              "identifierName": "updateComponents"
                            },
                            "name": "updateComponents"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6326,
                      "end": 6344,
                      "loc": {
                        "start": {
                          "line": 180,
                          "column": 8
                        },
                        "end": {
                          "line": 180,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6326,
                        "end": 6343,
                        "loc": {
                          "start": {
                            "line": 180,
                            "column": 8
                          },
                          "end": {
                            "line": 180,
                            "column": 25
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6326,
                          "end": 6341,
                          "loc": {
                            "start": {
                              "line": 180,
                              "column": 8
                            },
                            "end": {
                              "line": 180,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6326,
                            "end": 6330,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 8
                              },
                              "end": {
                                "line": 180,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6331,
                            "end": 6341,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 13
                              },
                              "end": {
                                "line": 180,
                                "column": 23
                              },
                              "identifierName": "postUpdate"
                            },
                            "name": "postUpdate"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Rewritten update() functions which is originally defined in Updateable.\n     * The GameObject adds a pre and post update function, and respective overrideable callbacks\n     * (onPreUpdate and onPostUpdate).\n     ",
                    "start": 5838,
                    "end": 6064,
                    "loc": {
                      "start": {
                        "line": 163,
                        "column": 4
                      },
                      "end": {
                        "line": 167,
                        "column": 7
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Called by the GameObject before an update to do default calls for preUpdating. Afterwards it\n     * calls the overrideable function, onPreUpdate.\n     ",
                    "start": 6356,
                    "end": 6520,
                    "loc": {
                      "start": {
                        "line": 183,
                        "column": 4
                      },
                      "end": {
                        "line": 186,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 6525,
                "end": 6572,
                "loc": {
                  "start": {
                    "line": 187,
                    "column": 4
                  },
                  "end": {
                    "line": 189,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 6525,
                  "end": 6534,
                  "loc": {
                    "start": {
                      "line": 187,
                      "column": 4
                    },
                    "end": {
                      "line": 187,
                      "column": 13
                    },
                    "identifierName": "preUpdate"
                  },
                  "name": "preUpdate",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 6537,
                  "end": 6572,
                  "loc": {
                    "start": {
                      "line": 187,
                      "column": 16
                    },
                    "end": {
                      "line": 189,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 6547,
                      "end": 6566,
                      "loc": {
                        "start": {
                          "line": 188,
                          "column": 8
                        },
                        "end": {
                          "line": 188,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6547,
                        "end": 6565,
                        "loc": {
                          "start": {
                            "line": 188,
                            "column": 8
                          },
                          "end": {
                            "line": 188,
                            "column": 26
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6547,
                          "end": 6563,
                          "loc": {
                            "start": {
                              "line": 188,
                              "column": 8
                            },
                            "end": {
                              "line": 188,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6547,
                            "end": 6551,
                            "loc": {
                              "start": {
                                "line": 188,
                                "column": 8
                              },
                              "end": {
                                "line": 188,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6552,
                            "end": 6563,
                            "loc": {
                              "start": {
                                "line": 188,
                                "column": 13
                              },
                              "end": {
                                "line": 188,
                                "column": 24
                              },
                              "identifierName": "onPreUpdate"
                            },
                            "name": "onPreUpdate"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Called by the GameObject before an update to do default calls for preUpdating. Afterwards it\n     * calls the overrideable function, onPreUpdate.\n     ",
                    "start": 6356,
                    "end": 6520,
                    "loc": {
                      "start": {
                        "line": 183,
                        "column": 4
                      },
                      "end": {
                        "line": 186,
                        "column": 7
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Called by the GameObject after an update to do default calls for postUpdating. Afterwards it\n     * calls the overrideable function, onPostUpdate.\n     ",
                    "start": 6578,
                    "end": 6743,
                    "loc": {
                      "start": {
                        "line": 191,
                        "column": 4
                      },
                      "end": {
                        "line": 194,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 6748,
                "end": 6797,
                "loc": {
                  "start": {
                    "line": 195,
                    "column": 4
                  },
                  "end": {
                    "line": 197,
                    "column": 5
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 6748,
                  "end": 6758,
                  "loc": {
                    "start": {
                      "line": 195,
                      "column": 4
                    },
                    "end": {
                      "line": 195,
                      "column": 14
                    },
                    "identifierName": "postUpdate"
                  },
                  "name": "postUpdate",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 6761,
                  "end": 6797,
                  "loc": {
                    "start": {
                      "line": 195,
                      "column": 17
                    },
                    "end": {
                      "line": 197,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 6771,
                      "end": 6791,
                      "loc": {
                        "start": {
                          "line": 196,
                          "column": 8
                        },
                        "end": {
                          "line": 196,
                          "column": 28
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6771,
                        "end": 6790,
                        "loc": {
                          "start": {
                            "line": 196,
                            "column": 8
                          },
                          "end": {
                            "line": 196,
                            "column": 27
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6771,
                          "end": 6788,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 8
                            },
                            "end": {
                              "line": 196,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6771,
                            "end": 6775,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 8
                              },
                              "end": {
                                "line": 196,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6776,
                            "end": 6788,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 13
                              },
                              "end": {
                                "line": 196,
                                "column": 25
                              },
                              "identifierName": "onPostUpdate"
                            },
                            "name": "onPostUpdate"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Called by the GameObject after an update to do default calls for postUpdating. Afterwards it\n     * calls the overrideable function, onPostUpdate.\n     ",
                    "start": 6578,
                    "end": 6743,
                    "loc": {
                      "start": {
                        "line": 191,
                        "column": 4
                      },
                      "end": {
                        "line": 194,
                        "column": 7
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Override for Pre Update functionality.\n     ",
                    "start": 6803,
                    "end": 6860,
                    "loc": {
                      "start": {
                        "line": 199,
                        "column": 4
                      },
                      "end": {
                        "line": 201,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 6865,
                "end": 6881,
                "loc": {
                  "start": {
                    "line": 202,
                    "column": 4
                  },
                  "end": {
                    "line": 202,
                    "column": 20
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 6865,
                  "end": 6876,
                  "loc": {
                    "start": {
                      "line": 202,
                      "column": 4
                    },
                    "end": {
                      "line": 202,
                      "column": 15
                    },
                    "identifierName": "onPreUpdate"
                  },
                  "name": "onPreUpdate",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 6879,
                  "end": 6881,
                  "loc": {
                    "start": {
                      "line": 202,
                      "column": 18
                    },
                    "end": {
                      "line": 202,
                      "column": 20
                    }
                  },
                  "body": [],
                  "directives": [],
                  "leadingComments": null,
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Override for Pre Update functionality.\n     ",
                    "start": 6803,
                    "end": 6860,
                    "loc": {
                      "start": {
                        "line": 199,
                        "column": 4
                      },
                      "end": {
                        "line": 201,
                        "column": 7
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Override for Post Update functionality.\n     ",
                    "start": 6887,
                    "end": 6945,
                    "loc": {
                      "start": {
                        "line": 204,
                        "column": 4
                      },
                      "end": {
                        "line": 206,
                        "column": 7
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 6950,
                "end": 6967,
                "loc": {
                  "start": {
                    "line": 207,
                    "column": 4
                  },
                  "end": {
                    "line": 207,
                    "column": 21
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 6950,
                  "end": 6962,
                  "loc": {
                    "start": {
                      "line": 207,
                      "column": 4
                    },
                    "end": {
                      "line": 207,
                      "column": 16
                    },
                    "identifierName": "onPostUpdate"
                  },
                  "name": "onPostUpdate",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 6965,
                  "end": 6967,
                  "loc": {
                    "start": {
                      "line": 207,
                      "column": 19
                    },
                    "end": {
                      "line": 207,
                      "column": 21
                    }
                  },
                  "body": [],
                  "directives": []
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n     * Override for Post Update functionality.\n     ",
                    "start": 6887,
                    "end": 6945,
                    "loc": {
                      "start": {
                        "line": 204,
                        "column": 4
                      },
                      "end": {
                        "line": 206,
                        "column": 7
                      }
                    }
                  }
                ]
              }
            ]
          },
          "leadingComments": [
            {
              "type": "CommentBlock",
              "value": "*\n * Baseclass GameObject which derives from Updateable.\n * \n * Do not derive this class directly! GameObjects are not managed until they are assigned to a manager.\n * Instead, derive SceneObject or PersistentObject to create objects that exist the scope of a scene, or the scope of the game.\n * \n * All objects that should exist in the game screen should derive this. \n ",
              "start": 142,
              "end": 517,
              "loc": {
                "start": {
                  "line": 5,
                  "column": 0
                },
                "end": {
                  "line": 12,
                  "column": 3
                }
              }
            }
          ],
          "trailingComments": []
        },
        "leadingComments": [
          {
            "type": "CommentBlock",
            "value": "*\n * Baseclass GameObject which derives from Updateable.\n * \n * Do not derive this class directly! GameObjects are not managed until they are assigned to a manager.\n * Instead, derive SceneObject or PersistentObject to create objects that exist the scope of a scene, or the scope of the game.\n * \n * All objects that should exist in the game screen should derive this. \n ",
            "start": 142,
            "end": 517,
            "loc": {
              "start": {
                "line": 5,
                "column": 0
              },
              "end": {
                "line": 12,
                "column": 3
              }
            }
          }
        ]
      }
    ],
    "directives": []
  },
  "comments": [
    {
      "type": "CommentBlock",
      "value": "*\n * Baseclass GameObject which derives from Updateable.\n * \n * Do not derive this class directly! GameObjects are not managed until they are assigned to a manager.\n * Instead, derive SceneObject or PersistentObject to create objects that exist the scope of a scene, or the scope of the game.\n * \n * All objects that should exist in the game screen should derive this. \n ",
      "start": 142,
      "end": 517,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 12,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Default position, size and rotation of the Object.\n     * \n     * @param {Point} position A point of creation in the world.\n     * @param {Point} size A point representing scale of the object.\n     * @param {number} rotation A number representing angular rotation (in degrees).\n     ",
      "start": 575,
      "end": 871,
      "loc": {
        "start": {
          "line": 14,
          "column": 4
        },
        "end": {
          "line": 20,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Adds a component to this game object, and keeps reference to it.\n     * GameObjects will handle their components as they are added to the object.\n     * \n     * @param {Component} component The component assigned to this object.\n     ",
      "start": 1187,
      "end": 1434,
      "loc": {
        "start": {
          "line": 30,
          "column": 4
        },
        "end": {
          "line": 35,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Removes a single component from this GameObject by ID.\n     * \n     * @param {number} componentID Id of the component to remove.\n     ",
      "start": 1991,
      "end": 2138,
      "loc": {
        "start": {
          "line": 50,
          "column": 4
        },
        "end": {
          "line": 54,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Removes all Components of the named type.\n     * \n     * @param {string} componentName The name of the components to clear.\n     ",
      "start": 2650,
      "end": 2792,
      "loc": {
        "start": {
          "line": 69,
          "column": 4
        },
        "end": {
          "line": 73,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Removes all components except for the Transform component.\n     ",
      "start": 3169,
      "end": 3246,
      "loc": {
        "start": {
          "line": 85,
          "column": 4
        },
        "end": {
          "line": 87,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Returns a boolean on if there is a component of type {componentName}.\n     * \n     * @param {string} componentName Name of the component type to search for.\n     * \n     * @returns {boolean} true if there is at least one component of this type.\n     ",
      "start": 3740,
      "end": 4003,
      "loc": {
        "start": {
          "line": 102,
          "column": 4
        },
        "end": {
          "line": 108,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Returns a component of type {componentName}. The second parameter can determine which \n     * Component of that type to return if there are more than 1. \n     * \n     * @param {string} componentName Name of the component type to return.\n     * @param {*} index Index of the component to get. Defaults to first component.\n     ",
      "start": 4197,
      "end": 4536,
      "loc": {
        "start": {
          "line": 116,
          "column": 4
        },
        "end": {
          "line": 122,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Updates all components on this GameObject.\n     ",
      "start": 4740,
      "end": 4801,
      "loc": {
        "start": {
          "line": 130,
          "column": 4
        },
        "end": {
          "line": 132,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Rewritten update() functions which is originally defined in Updateable.\n     * The GameObject adds a pre and post update function, and respective overrideable callbacks\n     * (onPreUpdate and onPostUpdate).\n     ",
      "start": 5838,
      "end": 6064,
      "loc": {
        "start": {
          "line": 163,
          "column": 4
        },
        "end": {
          "line": 167,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Called by the GameObject before an update to do default calls for preUpdating. Afterwards it\n     * calls the overrideable function, onPreUpdate.\n     ",
      "start": 6356,
      "end": 6520,
      "loc": {
        "start": {
          "line": 183,
          "column": 4
        },
        "end": {
          "line": 186,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Called by the GameObject after an update to do default calls for postUpdating. Afterwards it\n     * calls the overrideable function, onPostUpdate.\n     ",
      "start": 6578,
      "end": 6743,
      "loc": {
        "start": {
          "line": 191,
          "column": 4
        },
        "end": {
          "line": 194,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Override for Pre Update functionality.\n     ",
      "start": 6803,
      "end": 6860,
      "loc": {
        "start": {
          "line": 199,
          "column": 4
        },
        "end": {
          "line": 201,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Override for Post Update functionality.\n     ",
      "start": 6887,
      "end": 6945,
      "loc": {
        "start": {
          "line": 204,
          "column": 4
        },
        "end": {
          "line": 206,
          "column": 7
        }
      }
    }
  ],
  "tokens": [
    {
      "type": {
        "label": "import",
        "keyword": "import",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "import",
      "start": 0,
      "end": 6,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Updateable",
      "start": 7,
      "end": 17,
      "loc": {
        "start": {
          "line": 1,
          "column": 7
        },
        "end": {
          "line": 1,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "from",
      "start": 18,
      "end": 22,
      "loc": {
        "start": {
          "line": 1,
          "column": 18
        },
        "end": {
          "line": 1,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "../base/Updateable",
      "start": 23,
      "end": 43,
      "loc": {
        "start": {
          "line": 1,
          "column": 23
        },
        "end": {
          "line": 1,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 43,
      "end": 44,
      "loc": {
        "start": {
          "line": 1,
          "column": 43
        },
        "end": {
          "line": 1,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "import",
        "keyword": "import",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "import",
      "start": 45,
      "end": 51,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Component",
      "start": 52,
      "end": 61,
      "loc": {
        "start": {
          "line": 2,
          "column": 7
        },
        "end": {
          "line": 2,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "from",
      "start": 62,
      "end": 66,
      "loc": {
        "start": {
          "line": 2,
          "column": 17
        },
        "end": {
          "line": 2,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "../component/Component",
      "start": 67,
      "end": 91,
      "loc": {
        "start": {
          "line": 2,
          "column": 22
        },
        "end": {
          "line": 2,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 91,
      "end": 92,
      "loc": {
        "start": {
          "line": 2,
          "column": 46
        },
        "end": {
          "line": 2,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "import",
        "keyword": "import",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "import",
      "start": 93,
      "end": 99,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Transform",
      "start": 100,
      "end": 109,
      "loc": {
        "start": {
          "line": 3,
          "column": 7
        },
        "end": {
          "line": 3,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "from",
      "start": 110,
      "end": 114,
      "loc": {
        "start": {
          "line": 3,
          "column": 17
        },
        "end": {
          "line": 3,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "../component/Transform",
      "start": 115,
      "end": 139,
      "loc": {
        "start": {
          "line": 3,
          "column": 22
        },
        "end": {
          "line": 3,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 139,
      "end": 140,
      "loc": {
        "start": {
          "line": 3,
          "column": 46
        },
        "end": {
          "line": 3,
          "column": 47
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n * Baseclass GameObject which derives from Updateable.\n * \n * Do not derive this class directly! GameObjects are not managed until they are assigned to a manager.\n * Instead, derive SceneObject or PersistentObject to create objects that exist the scope of a scene, or the scope of the game.\n * \n * All objects that should exist in the game screen should derive this. \n ",
      "start": 142,
      "end": 517,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 12,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "export",
        "keyword": "export",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "export",
      "start": 518,
      "end": 524,
      "loc": {
        "start": {
          "line": 13,
          "column": 0
        },
        "end": {
          "line": 13,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "default",
        "keyword": "default",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "default",
      "start": 525,
      "end": 532,
      "loc": {
        "start": {
          "line": 13,
          "column": 7
        },
        "end": {
          "line": 13,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "class",
        "keyword": "class",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "class",
      "start": 533,
      "end": 538,
      "loc": {
        "start": {
          "line": 13,
          "column": 15
        },
        "end": {
          "line": 13,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "GameObject",
      "start": 539,
      "end": 549,
      "loc": {
        "start": {
          "line": 13,
          "column": 21
        },
        "end": {
          "line": 13,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "extends",
        "keyword": "extends",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "extends",
      "start": 550,
      "end": 557,
      "loc": {
        "start": {
          "line": 13,
          "column": 32
        },
        "end": {
          "line": 13,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Updateable",
      "start": 558,
      "end": 568,
      "loc": {
        "start": {
          "line": 13,
          "column": 40
        },
        "end": {
          "line": 13,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 569,
      "end": 570,
      "loc": {
        "start": {
          "line": 13,
          "column": 51
        },
        "end": {
          "line": 13,
          "column": 52
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Default position, size and rotation of the Object.\n     * \n     * @param {Point} position A point of creation in the world.\n     * @param {Point} size A point representing scale of the object.\n     * @param {number} rotation A number representing angular rotation (in degrees).\n     ",
      "start": 575,
      "end": 871,
      "loc": {
        "start": {
          "line": 14,
          "column": 4
        },
        "end": {
          "line": 20,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "constructor",
      "start": 876,
      "end": 887,
      "loc": {
        "start": {
          "line": 21,
          "column": 4
        },
        "end": {
          "line": 21,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 887,
      "end": 888,
      "loc": {
        "start": {
          "line": 21,
          "column": 15
        },
        "end": {
          "line": 21,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 888,
      "end": 896,
      "loc": {
        "start": {
          "line": 21,
          "column": 16
        },
        "end": {
          "line": 21,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 897,
      "end": 898,
      "loc": {
        "start": {
          "line": 21,
          "column": 25
        },
        "end": {
          "line": 21,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 899,
      "end": 902,
      "loc": {
        "start": {
          "line": 21,
          "column": 27
        },
        "end": {
          "line": 21,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Point",
      "start": 903,
      "end": 908,
      "loc": {
        "start": {
          "line": 21,
          "column": 31
        },
        "end": {
          "line": 21,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 908,
      "end": 909,
      "loc": {
        "start": {
          "line": 21,
          "column": 36
        },
        "end": {
          "line": 21,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 909,
      "end": 910,
      "loc": {
        "start": {
          "line": 21,
          "column": 37
        },
        "end": {
          "line": 21,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 910,
      "end": 911,
      "loc": {
        "start": {
          "line": 21,
          "column": 38
        },
        "end": {
          "line": 21,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 912,
      "end": 913,
      "loc": {
        "start": {
          "line": 21,
          "column": 40
        },
        "end": {
          "line": 21,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 913,
      "end": 914,
      "loc": {
        "start": {
          "line": 21,
          "column": 41
        },
        "end": {
          "line": 21,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 915,
      "end": 916,
      "loc": {
        "start": {
          "line": 21,
          "column": 43
        },
        "end": {
          "line": 21,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 916,
      "end": 917,
      "loc": {
        "start": {
          "line": 21,
          "column": 44
        },
        "end": {
          "line": 21,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 917,
      "end": 918,
      "loc": {
        "start": {
          "line": 21,
          "column": 45
        },
        "end": {
          "line": 21,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "size",
      "start": 919,
      "end": 923,
      "loc": {
        "start": {
          "line": 21,
          "column": 47
        },
        "end": {
          "line": 21,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 924,
      "end": 925,
      "loc": {
        "start": {
          "line": 21,
          "column": 52
        },
        "end": {
          "line": 21,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 926,
      "end": 929,
      "loc": {
        "start": {
          "line": 21,
          "column": 54
        },
        "end": {
          "line": 21,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Point",
      "start": 930,
      "end": 935,
      "loc": {
        "start": {
          "line": 21,
          "column": 58
        },
        "end": {
          "line": 21,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 935,
      "end": 936,
      "loc": {
        "start": {
          "line": 21,
          "column": 63
        },
        "end": {
          "line": 21,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 32,
      "start": 936,
      "end": 938,
      "loc": {
        "start": {
          "line": 21,
          "column": 64
        },
        "end": {
          "line": 21,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 938,
      "end": 939,
      "loc": {
        "start": {
          "line": 21,
          "column": 66
        },
        "end": {
          "line": 21,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 32,
      "start": 940,
      "end": 942,
      "loc": {
        "start": {
          "line": 21,
          "column": 68
        },
        "end": {
          "line": 21,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 942,
      "end": 943,
      "loc": {
        "start": {
          "line": 21,
          "column": 70
        },
        "end": {
          "line": 21,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 944,
      "end": 945,
      "loc": {
        "start": {
          "line": 21,
          "column": 72
        },
        "end": {
          "line": 21,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 945,
      "end": 946,
      "loc": {
        "start": {
          "line": 21,
          "column": 73
        },
        "end": {
          "line": 21,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 946,
      "end": 947,
      "loc": {
        "start": {
          "line": 21,
          "column": 74
        },
        "end": {
          "line": 21,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rotation",
      "start": 948,
      "end": 956,
      "loc": {
        "start": {
          "line": 21,
          "column": 76
        },
        "end": {
          "line": 21,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 957,
      "end": 958,
      "loc": {
        "start": {
          "line": 21,
          "column": 85
        },
        "end": {
          "line": 21,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 959,
      "end": 960,
      "loc": {
        "start": {
          "line": 21,
          "column": 87
        },
        "end": {
          "line": 21,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 960,
      "end": 961,
      "loc": {
        "start": {
          "line": 21,
          "column": 88
        },
        "end": {
          "line": 21,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 962,
      "end": 963,
      "loc": {
        "start": {
          "line": 21,
          "column": 90
        },
        "end": {
          "line": 21,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "super",
        "keyword": "super",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "super",
      "start": 972,
      "end": 977,
      "loc": {
        "start": {
          "line": 22,
          "column": 8
        },
        "end": {
          "line": 22,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 977,
      "end": 978,
      "loc": {
        "start": {
          "line": 22,
          "column": 13
        },
        "end": {
          "line": 22,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 978,
      "end": 979,
      "loc": {
        "start": {
          "line": 22,
          "column": 14
        },
        "end": {
          "line": 22,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 979,
      "end": 980,
      "loc": {
        "start": {
          "line": 22,
          "column": 15
        },
        "end": {
          "line": 22,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 989,
      "end": 993,
      "loc": {
        "start": {
          "line": 23,
          "column": 8
        },
        "end": {
          "line": 23,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 993,
      "end": 994,
      "loc": {
        "start": {
          "line": 23,
          "column": 12
        },
        "end": {
          "line": 23,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "className",
      "start": 994,
      "end": 1003,
      "loc": {
        "start": {
          "line": 23,
          "column": 13
        },
        "end": {
          "line": 23,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1004,
      "end": 1005,
      "loc": {
        "start": {
          "line": 23,
          "column": 23
        },
        "end": {
          "line": 23,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "GameObject",
      "start": 1006,
      "end": 1018,
      "loc": {
        "start": {
          "line": 23,
          "column": 25
        },
        "end": {
          "line": 23,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1018,
      "end": 1019,
      "loc": {
        "start": {
          "line": 23,
          "column": 37
        },
        "end": {
          "line": 23,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1029,
      "end": 1033,
      "loc": {
        "start": {
          "line": 25,
          "column": 8
        },
        "end": {
          "line": 25,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1033,
      "end": 1034,
      "loc": {
        "start": {
          "line": 25,
          "column": 12
        },
        "end": {
          "line": 25,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 1034,
      "end": 1044,
      "loc": {
        "start": {
          "line": 25,
          "column": 13
        },
        "end": {
          "line": 25,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1045,
      "end": 1046,
      "loc": {
        "start": {
          "line": 25,
          "column": 24
        },
        "end": {
          "line": 25,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1047,
      "end": 1048,
      "loc": {
        "start": {
          "line": 25,
          "column": 26
        },
        "end": {
          "line": 25,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1048,
      "end": 1049,
      "loc": {
        "start": {
          "line": 25,
          "column": 27
        },
        "end": {
          "line": 25,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1049,
      "end": 1050,
      "loc": {
        "start": {
          "line": 25,
          "column": 28
        },
        "end": {
          "line": 25,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1059,
      "end": 1063,
      "loc": {
        "start": {
          "line": 26,
          "column": 8
        },
        "end": {
          "line": 26,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1063,
      "end": 1064,
      "loc": {
        "start": {
          "line": 26,
          "column": 12
        },
        "end": {
          "line": 26,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addComponent",
      "start": 1064,
      "end": 1076,
      "loc": {
        "start": {
          "line": 26,
          "column": 13
        },
        "end": {
          "line": 26,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1076,
      "end": 1077,
      "loc": {
        "start": {
          "line": 26,
          "column": 25
        },
        "end": {
          "line": 26,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 1077,
      "end": 1080,
      "loc": {
        "start": {
          "line": 26,
          "column": 26
        },
        "end": {
          "line": 26,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Transform",
      "start": 1081,
      "end": 1090,
      "loc": {
        "start": {
          "line": 26,
          "column": 30
        },
        "end": {
          "line": 26,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1090,
      "end": 1091,
      "loc": {
        "start": {
          "line": 26,
          "column": 39
        },
        "end": {
          "line": 26,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 1091,
      "end": 1099,
      "loc": {
        "start": {
          "line": 26,
          "column": 40
        },
        "end": {
          "line": 26,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1099,
      "end": 1100,
      "loc": {
        "start": {
          "line": 26,
          "column": 48
        },
        "end": {
          "line": 26,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "size",
      "start": 1101,
      "end": 1105,
      "loc": {
        "start": {
          "line": 26,
          "column": 50
        },
        "end": {
          "line": 26,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1105,
      "end": 1106,
      "loc": {
        "start": {
          "line": 26,
          "column": 54
        },
        "end": {
          "line": 26,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rotation",
      "start": 1107,
      "end": 1115,
      "loc": {
        "start": {
          "line": 26,
          "column": 56
        },
        "end": {
          "line": 26,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1115,
      "end": 1116,
      "loc": {
        "start": {
          "line": 26,
          "column": 64
        },
        "end": {
          "line": 26,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1116,
      "end": 1117,
      "loc": {
        "start": {
          "line": 26,
          "column": 65
        },
        "end": {
          "line": 26,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1117,
      "end": 1118,
      "loc": {
        "start": {
          "line": 26,
          "column": 66
        },
        "end": {
          "line": 26,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1127,
      "end": 1131,
      "loc": {
        "start": {
          "line": 27,
          "column": 8
        },
        "end": {
          "line": 27,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1131,
      "end": 1132,
      "loc": {
        "start": {
          "line": 27,
          "column": 12
        },
        "end": {
          "line": 27,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "transform",
      "start": 1132,
      "end": 1141,
      "loc": {
        "start": {
          "line": 27,
          "column": 13
        },
        "end": {
          "line": 27,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1142,
      "end": 1143,
      "loc": {
        "start": {
          "line": 27,
          "column": 23
        },
        "end": {
          "line": 27,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1144,
      "end": 1148,
      "loc": {
        "start": {
          "line": 27,
          "column": 25
        },
        "end": {
          "line": 27,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1148,
      "end": 1149,
      "loc": {
        "start": {
          "line": 27,
          "column": 29
        },
        "end": {
          "line": 27,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getComponent",
      "start": 1149,
      "end": 1161,
      "loc": {
        "start": {
          "line": 27,
          "column": 30
        },
        "end": {
          "line": 27,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1161,
      "end": 1162,
      "loc": {
        "start": {
          "line": 27,
          "column": 42
        },
        "end": {
          "line": 27,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "Transform",
      "start": 1162,
      "end": 1173,
      "loc": {
        "start": {
          "line": 27,
          "column": 43
        },
        "end": {
          "line": 27,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1173,
      "end": 1174,
      "loc": {
        "start": {
          "line": 27,
          "column": 54
        },
        "end": {
          "line": 27,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1174,
      "end": 1175,
      "loc": {
        "start": {
          "line": 27,
          "column": 55
        },
        "end": {
          "line": 27,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1180,
      "end": 1181,
      "loc": {
        "start": {
          "line": 28,
          "column": 4
        },
        "end": {
          "line": 28,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Adds a component to this game object, and keeps reference to it.\n     * GameObjects will handle their components as they are added to the object.\n     * \n     * @param {Component} component The component assigned to this object.\n     ",
      "start": 1187,
      "end": 1434,
      "loc": {
        "start": {
          "line": 30,
          "column": 4
        },
        "end": {
          "line": 35,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addComponent",
      "start": 1439,
      "end": 1451,
      "loc": {
        "start": {
          "line": 36,
          "column": 4
        },
        "end": {
          "line": 36,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1451,
      "end": 1452,
      "loc": {
        "start": {
          "line": 36,
          "column": 16
        },
        "end": {
          "line": 36,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "component",
      "start": 1452,
      "end": 1461,
      "loc": {
        "start": {
          "line": 36,
          "column": 17
        },
        "end": {
          "line": 36,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1461,
      "end": 1462,
      "loc": {
        "start": {
          "line": 36,
          "column": 26
        },
        "end": {
          "line": 36,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1463,
      "end": 1464,
      "loc": {
        "start": {
          "line": 36,
          "column": 28
        },
        "end": {
          "line": 36,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1473,
      "end": 1475,
      "loc": {
        "start": {
          "line": 37,
          "column": 8
        },
        "end": {
          "line": 37,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1476,
      "end": 1477,
      "loc": {
        "start": {
          "line": 37,
          "column": 11
        },
        "end": {
          "line": 37,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1477,
      "end": 1481,
      "loc": {
        "start": {
          "line": 37,
          "column": 12
        },
        "end": {
          "line": 37,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1481,
      "end": 1482,
      "loc": {
        "start": {
          "line": 37,
          "column": 16
        },
        "end": {
          "line": 37,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 1482,
      "end": 1492,
      "loc": {
        "start": {
          "line": 37,
          "column": 17
        },
        "end": {
          "line": 37,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1492,
      "end": 1493,
      "loc": {
        "start": {
          "line": 37,
          "column": 27
        },
        "end": {
          "line": 37,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "component",
      "start": 1493,
      "end": 1502,
      "loc": {
        "start": {
          "line": 37,
          "column": 28
        },
        "end": {
          "line": 37,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1502,
      "end": 1503,
      "loc": {
        "start": {
          "line": 37,
          "column": 37
        },
        "end": {
          "line": 37,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "className",
      "start": 1503,
      "end": 1512,
      "loc": {
        "start": {
          "line": 37,
          "column": 38
        },
        "end": {
          "line": 37,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1512,
      "end": 1513,
      "loc": {
        "start": {
          "line": 37,
          "column": 47
        },
        "end": {
          "line": 37,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "==",
      "start": 1514,
      "end": 1516,
      "loc": {
        "start": {
          "line": 37,
          "column": 49
        },
        "end": {
          "line": 37,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 1517,
      "end": 1521,
      "loc": {
        "start": {
          "line": 37,
          "column": 52
        },
        "end": {
          "line": 37,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1521,
      "end": 1522,
      "loc": {
        "start": {
          "line": 37,
          "column": 56
        },
        "end": {
          "line": 37,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1523,
      "end": 1524,
      "loc": {
        "start": {
          "line": 37,
          "column": 58
        },
        "end": {
          "line": 37,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1537,
      "end": 1541,
      "loc": {
        "start": {
          "line": 38,
          "column": 12
        },
        "end": {
          "line": 38,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1541,
      "end": 1542,
      "loc": {
        "start": {
          "line": 38,
          "column": 16
        },
        "end": {
          "line": 38,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 1542,
      "end": 1552,
      "loc": {
        "start": {
          "line": 38,
          "column": 17
        },
        "end": {
          "line": 38,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1552,
      "end": 1553,
      "loc": {
        "start": {
          "line": 38,
          "column": 27
        },
        "end": {
          "line": 38,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "component",
      "start": 1553,
      "end": 1562,
      "loc": {
        "start": {
          "line": 38,
          "column": 28
        },
        "end": {
          "line": 38,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1562,
      "end": 1563,
      "loc": {
        "start": {
          "line": 38,
          "column": 37
        },
        "end": {
          "line": 38,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "className",
      "start": 1563,
      "end": 1572,
      "loc": {
        "start": {
          "line": 38,
          "column": 38
        },
        "end": {
          "line": 38,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1572,
      "end": 1573,
      "loc": {
        "start": {
          "line": 38,
          "column": 47
        },
        "end": {
          "line": 38,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1574,
      "end": 1575,
      "loc": {
        "start": {
          "line": 38,
          "column": 49
        },
        "end": {
          "line": 38,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1576,
      "end": 1577,
      "loc": {
        "start": {
          "line": 38,
          "column": 51
        },
        "end": {
          "line": 38,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1577,
      "end": 1578,
      "loc": {
        "start": {
          "line": 38,
          "column": 52
        },
        "end": {
          "line": 38,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1578,
      "end": 1579,
      "loc": {
        "start": {
          "line": 38,
          "column": 53
        },
        "end": {
          "line": 38,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1588,
      "end": 1589,
      "loc": {
        "start": {
          "line": 39,
          "column": 8
        },
        "end": {
          "line": 39,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1598,
      "end": 1600,
      "loc": {
        "start": {
          "line": 40,
          "column": 8
        },
        "end": {
          "line": 40,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1601,
      "end": 1602,
      "loc": {
        "start": {
          "line": 40,
          "column": 11
        },
        "end": {
          "line": 40,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "component",
      "start": 1602,
      "end": 1611,
      "loc": {
        "start": {
          "line": 40,
          "column": 12
        },
        "end": {
          "line": 40,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1611,
      "end": 1612,
      "loc": {
        "start": {
          "line": 40,
          "column": 21
        },
        "end": {
          "line": 40,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isUnique",
      "start": 1612,
      "end": 1620,
      "loc": {
        "start": {
          "line": 40,
          "column": 22
        },
        "end": {
          "line": 40,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 1621,
      "end": 1623,
      "loc": {
        "start": {
          "line": 40,
          "column": 31
        },
        "end": {
          "line": 40,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1624,
      "end": 1628,
      "loc": {
        "start": {
          "line": 40,
          "column": 34
        },
        "end": {
          "line": 40,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1628,
      "end": 1629,
      "loc": {
        "start": {
          "line": 40,
          "column": 38
        },
        "end": {
          "line": 40,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 1629,
      "end": 1639,
      "loc": {
        "start": {
          "line": 40,
          "column": 39
        },
        "end": {
          "line": 40,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1639,
      "end": 1640,
      "loc": {
        "start": {
          "line": 40,
          "column": 49
        },
        "end": {
          "line": 40,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "component",
      "start": 1640,
      "end": 1649,
      "loc": {
        "start": {
          "line": 40,
          "column": 50
        },
        "end": {
          "line": 40,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1649,
      "end": 1650,
      "loc": {
        "start": {
          "line": 40,
          "column": 59
        },
        "end": {
          "line": 40,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "className",
      "start": 1650,
      "end": 1659,
      "loc": {
        "start": {
          "line": 40,
          "column": 60
        },
        "end": {
          "line": 40,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1659,
      "end": 1660,
      "loc": {
        "start": {
          "line": 40,
          "column": 69
        },
        "end": {
          "line": 40,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1660,
      "end": 1661,
      "loc": {
        "start": {
          "line": 40,
          "column": 70
        },
        "end": {
          "line": 40,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 1661,
      "end": 1667,
      "loc": {
        "start": {
          "line": 40,
          "column": 71
        },
        "end": {
          "line": 40,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 1668,
      "end": 1669,
      "loc": {
        "start": {
          "line": 40,
          "column": 78
        },
        "end": {
          "line": 40,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 1670,
      "end": 1671,
      "loc": {
        "start": {
          "line": 40,
          "column": 80
        },
        "end": {
          "line": 40,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1671,
      "end": 1672,
      "loc": {
        "start": {
          "line": 40,
          "column": 81
        },
        "end": {
          "line": 40,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1673,
      "end": 1674,
      "loc": {
        "start": {
          "line": 40,
          "column": 83
        },
        "end": {
          "line": 40,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 1687,
      "end": 1692,
      "loc": {
        "start": {
          "line": 41,
          "column": 12
        },
        "end": {
          "line": 41,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "There is already a unique component of type ",
      "start": 1693,
      "end": 1739,
      "loc": {
        "start": {
          "line": 41,
          "column": 18
        },
        "end": {
          "line": 41,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 1740,
      "end": 1741,
      "loc": {
        "start": {
          "line": 41,
          "column": 65
        },
        "end": {
          "line": 41,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "component",
      "start": 1742,
      "end": 1751,
      "loc": {
        "start": {
          "line": 41,
          "column": 67
        },
        "end": {
          "line": 41,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1751,
      "end": 1752,
      "loc": {
        "start": {
          "line": 41,
          "column": 76
        },
        "end": {
          "line": 41,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "className",
      "start": 1752,
      "end": 1761,
      "loc": {
        "start": {
          "line": 41,
          "column": 77
        },
        "end": {
          "line": 41,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 1762,
      "end": 1763,
      "loc": {
        "start": {
          "line": 41,
          "column": 87
        },
        "end": {
          "line": 41,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " on this GameObject!",
      "start": 1764,
      "end": 1786,
      "loc": {
        "start": {
          "line": 41,
          "column": 89
        },
        "end": {
          "line": 41,
          "column": 111
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1786,
      "end": 1787,
      "loc": {
        "start": {
          "line": 41,
          "column": 111
        },
        "end": {
          "line": 41,
          "column": 112
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1800,
      "end": 1806,
      "loc": {
        "start": {
          "line": 42,
          "column": 12
        },
        "end": {
          "line": 42,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 1807,
      "end": 1812,
      "loc": {
        "start": {
          "line": 42,
          "column": 19
        },
        "end": {
          "line": 42,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1812,
      "end": 1813,
      "loc": {
        "start": {
          "line": 42,
          "column": 24
        },
        "end": {
          "line": 42,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1822,
      "end": 1823,
      "loc": {
        "start": {
          "line": 43,
          "column": 8
        },
        "end": {
          "line": 43,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1832,
      "end": 1836,
      "loc": {
        "start": {
          "line": 44,
          "column": 8
        },
        "end": {
          "line": 44,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1836,
      "end": 1837,
      "loc": {
        "start": {
          "line": 44,
          "column": 12
        },
        "end": {
          "line": 44,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 1837,
      "end": 1847,
      "loc": {
        "start": {
          "line": 44,
          "column": 13
        },
        "end": {
          "line": 44,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1847,
      "end": 1848,
      "loc": {
        "start": {
          "line": 44,
          "column": 23
        },
        "end": {
          "line": 44,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "component",
      "start": 1848,
      "end": 1857,
      "loc": {
        "start": {
          "line": 44,
          "column": 24
        },
        "end": {
          "line": 44,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1857,
      "end": 1858,
      "loc": {
        "start": {
          "line": 44,
          "column": 33
        },
        "end": {
          "line": 44,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "className",
      "start": 1858,
      "end": 1867,
      "loc": {
        "start": {
          "line": 44,
          "column": 34
        },
        "end": {
          "line": 44,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1867,
      "end": 1868,
      "loc": {
        "start": {
          "line": 44,
          "column": 43
        },
        "end": {
          "line": 44,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1868,
      "end": 1869,
      "loc": {
        "start": {
          "line": 44,
          "column": 44
        },
        "end": {
          "line": 44,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "push",
      "start": 1869,
      "end": 1873,
      "loc": {
        "start": {
          "line": 44,
          "column": 45
        },
        "end": {
          "line": 44,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1873,
      "end": 1874,
      "loc": {
        "start": {
          "line": 44,
          "column": 49
        },
        "end": {
          "line": 44,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "component",
      "start": 1874,
      "end": 1883,
      "loc": {
        "start": {
          "line": 44,
          "column": 50
        },
        "end": {
          "line": 44,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1883,
      "end": 1884,
      "loc": {
        "start": {
          "line": 44,
          "column": 59
        },
        "end": {
          "line": 44,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1884,
      "end": 1885,
      "loc": {
        "start": {
          "line": 44,
          "column": 60
        },
        "end": {
          "line": 44,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "component",
      "start": 1894,
      "end": 1903,
      "loc": {
        "start": {
          "line": 45,
          "column": 8
        },
        "end": {
          "line": 45,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1903,
      "end": 1904,
      "loc": {
        "start": {
          "line": 45,
          "column": 17
        },
        "end": {
          "line": 45,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "gameObject",
      "start": 1904,
      "end": 1914,
      "loc": {
        "start": {
          "line": 45,
          "column": 18
        },
        "end": {
          "line": 45,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1915,
      "end": 1916,
      "loc": {
        "start": {
          "line": 45,
          "column": 29
        },
        "end": {
          "line": 45,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1917,
      "end": 1921,
      "loc": {
        "start": {
          "line": 45,
          "column": 31
        },
        "end": {
          "line": 45,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1921,
      "end": 1922,
      "loc": {
        "start": {
          "line": 45,
          "column": 35
        },
        "end": {
          "line": 45,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "component",
      "start": 1931,
      "end": 1940,
      "loc": {
        "start": {
          "line": 46,
          "column": 8
        },
        "end": {
          "line": 46,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1940,
      "end": 1941,
      "loc": {
        "start": {
          "line": 46,
          "column": 17
        },
        "end": {
          "line": 46,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onAddComponent",
      "start": 1941,
      "end": 1955,
      "loc": {
        "start": {
          "line": 46,
          "column": 18
        },
        "end": {
          "line": 46,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1955,
      "end": 1956,
      "loc": {
        "start": {
          "line": 46,
          "column": 32
        },
        "end": {
          "line": 46,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1956,
      "end": 1957,
      "loc": {
        "start": {
          "line": 46,
          "column": 33
        },
        "end": {
          "line": 46,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1957,
      "end": 1958,
      "loc": {
        "start": {
          "line": 46,
          "column": 34
        },
        "end": {
          "line": 46,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1967,
      "end": 1973,
      "loc": {
        "start": {
          "line": 47,
          "column": 8
        },
        "end": {
          "line": 47,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 1974,
      "end": 1978,
      "loc": {
        "start": {
          "line": 47,
          "column": 15
        },
        "end": {
          "line": 47,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1978,
      "end": 1979,
      "loc": {
        "start": {
          "line": 47,
          "column": 19
        },
        "end": {
          "line": 47,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1984,
      "end": 1985,
      "loc": {
        "start": {
          "line": 48,
          "column": 4
        },
        "end": {
          "line": 48,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Removes a single component from this GameObject by ID.\n     * \n     * @param {number} componentID Id of the component to remove.\n     ",
      "start": 1991,
      "end": 2138,
      "loc": {
        "start": {
          "line": 50,
          "column": 4
        },
        "end": {
          "line": 54,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "removeComponent",
      "start": 2143,
      "end": 2158,
      "loc": {
        "start": {
          "line": 55,
          "column": 4
        },
        "end": {
          "line": 55,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2158,
      "end": 2159,
      "loc": {
        "start": {
          "line": 55,
          "column": 19
        },
        "end": {
          "line": 55,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 2159,
      "end": 2172,
      "loc": {
        "start": {
          "line": 55,
          "column": 20
        },
        "end": {
          "line": 55,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2172,
      "end": 2173,
      "loc": {
        "start": {
          "line": 55,
          "column": 33
        },
        "end": {
          "line": 55,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentID",
      "start": 2174,
      "end": 2185,
      "loc": {
        "start": {
          "line": 55,
          "column": 35
        },
        "end": {
          "line": 55,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2185,
      "end": 2186,
      "loc": {
        "start": {
          "line": 55,
          "column": 46
        },
        "end": {
          "line": 55,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2187,
      "end": 2188,
      "loc": {
        "start": {
          "line": 55,
          "column": 48
        },
        "end": {
          "line": 55,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2197,
      "end": 2199,
      "loc": {
        "start": {
          "line": 56,
          "column": 8
        },
        "end": {
          "line": 56,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2200,
      "end": 2201,
      "loc": {
        "start": {
          "line": 56,
          "column": 11
        },
        "end": {
          "line": 56,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2201,
      "end": 2205,
      "loc": {
        "start": {
          "line": 56,
          "column": 12
        },
        "end": {
          "line": 56,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2205,
      "end": 2206,
      "loc": {
        "start": {
          "line": 56,
          "column": 16
        },
        "end": {
          "line": 56,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 2206,
      "end": 2216,
      "loc": {
        "start": {
          "line": 56,
          "column": 17
        },
        "end": {
          "line": 56,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2216,
      "end": 2217,
      "loc": {
        "start": {
          "line": 56,
          "column": 27
        },
        "end": {
          "line": 56,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 2217,
      "end": 2230,
      "loc": {
        "start": {
          "line": 56,
          "column": 28
        },
        "end": {
          "line": 56,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2230,
      "end": 2231,
      "loc": {
        "start": {
          "line": 56,
          "column": 41
        },
        "end": {
          "line": 56,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "==",
      "start": 2232,
      "end": 2234,
      "loc": {
        "start": {
          "line": 56,
          "column": 43
        },
        "end": {
          "line": 56,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 2235,
      "end": 2239,
      "loc": {
        "start": {
          "line": 56,
          "column": 46
        },
        "end": {
          "line": 56,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2239,
      "end": 2240,
      "loc": {
        "start": {
          "line": 56,
          "column": 50
        },
        "end": {
          "line": 56,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2253,
      "end": 2259,
      "loc": {
        "start": {
          "line": 57,
          "column": 12
        },
        "end": {
          "line": 57,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 2260,
      "end": 2265,
      "loc": {
        "start": {
          "line": 57,
          "column": 19
        },
        "end": {
          "line": 57,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2265,
      "end": 2266,
      "loc": {
        "start": {
          "line": 57,
          "column": 24
        },
        "end": {
          "line": 57,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 2275,
      "end": 2278,
      "loc": {
        "start": {
          "line": 58,
          "column": 8
        },
        "end": {
          "line": 58,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2279,
      "end": 2280,
      "loc": {
        "start": {
          "line": 58,
          "column": 12
        },
        "end": {
          "line": 58,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 2280,
      "end": 2283,
      "loc": {
        "start": {
          "line": 58,
          "column": 13
        },
        "end": {
          "line": 58,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 2284,
      "end": 2285,
      "loc": {
        "start": {
          "line": 58,
          "column": 17
        },
        "end": {
          "line": 58,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2286,
      "end": 2287,
      "loc": {
        "start": {
          "line": 58,
          "column": 19
        },
        "end": {
          "line": 58,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 2288,
      "end": 2289,
      "loc": {
        "start": {
          "line": 58,
          "column": 21
        },
        "end": {
          "line": 58,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2289,
      "end": 2290,
      "loc": {
        "start": {
          "line": 58,
          "column": 22
        },
        "end": {
          "line": 58,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 2291,
      "end": 2292,
      "loc": {
        "start": {
          "line": 58,
          "column": 24
        },
        "end": {
          "line": 58,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 2293,
      "end": 2294,
      "loc": {
        "start": {
          "line": 58,
          "column": 26
        },
        "end": {
          "line": 58,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2295,
      "end": 2299,
      "loc": {
        "start": {
          "line": 58,
          "column": 28
        },
        "end": {
          "line": 58,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2299,
      "end": 2300,
      "loc": {
        "start": {
          "line": 58,
          "column": 32
        },
        "end": {
          "line": 58,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 2300,
      "end": 2310,
      "loc": {
        "start": {
          "line": 58,
          "column": 33
        },
        "end": {
          "line": 58,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2310,
      "end": 2311,
      "loc": {
        "start": {
          "line": 58,
          "column": 43
        },
        "end": {
          "line": 58,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 2311,
      "end": 2324,
      "loc": {
        "start": {
          "line": 58,
          "column": 44
        },
        "end": {
          "line": 58,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2324,
      "end": 2325,
      "loc": {
        "start": {
          "line": 58,
          "column": 57
        },
        "end": {
          "line": 58,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2325,
      "end": 2326,
      "loc": {
        "start": {
          "line": 58,
          "column": 58
        },
        "end": {
          "line": 58,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 2326,
      "end": 2332,
      "loc": {
        "start": {
          "line": 58,
          "column": 59
        },
        "end": {
          "line": 58,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2332,
      "end": 2333,
      "loc": {
        "start": {
          "line": 58,
          "column": 65
        },
        "end": {
          "line": 58,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 2334,
      "end": 2335,
      "loc": {
        "start": {
          "line": 58,
          "column": 67
        },
        "end": {
          "line": 58,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "++/--",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": true,
        "binop": null
      },
      "value": "++",
      "start": 2335,
      "end": 2337,
      "loc": {
        "start": {
          "line": 58,
          "column": 68
        },
        "end": {
          "line": 58,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2337,
      "end": 2338,
      "loc": {
        "start": {
          "line": 58,
          "column": 70
        },
        "end": {
          "line": 58,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2339,
      "end": 2340,
      "loc": {
        "start": {
          "line": 58,
          "column": 72
        },
        "end": {
          "line": 58,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2353,
      "end": 2355,
      "loc": {
        "start": {
          "line": 59,
          "column": 12
        },
        "end": {
          "line": 59,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2356,
      "end": 2357,
      "loc": {
        "start": {
          "line": 59,
          "column": 15
        },
        "end": {
          "line": 59,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2357,
      "end": 2361,
      "loc": {
        "start": {
          "line": 59,
          "column": 16
        },
        "end": {
          "line": 59,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2361,
      "end": 2362,
      "loc": {
        "start": {
          "line": 59,
          "column": 20
        },
        "end": {
          "line": 59,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 2362,
      "end": 2372,
      "loc": {
        "start": {
          "line": 59,
          "column": 21
        },
        "end": {
          "line": 59,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2372,
      "end": 2373,
      "loc": {
        "start": {
          "line": 59,
          "column": 31
        },
        "end": {
          "line": 59,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 2373,
      "end": 2386,
      "loc": {
        "start": {
          "line": 59,
          "column": 32
        },
        "end": {
          "line": 59,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2386,
      "end": 2387,
      "loc": {
        "start": {
          "line": 59,
          "column": 45
        },
        "end": {
          "line": 59,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2387,
      "end": 2388,
      "loc": {
        "start": {
          "line": 59,
          "column": 46
        },
        "end": {
          "line": 59,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 2388,
      "end": 2389,
      "loc": {
        "start": {
          "line": 59,
          "column": 47
        },
        "end": {
          "line": 59,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2389,
      "end": 2390,
      "loc": {
        "start": {
          "line": 59,
          "column": 48
        },
        "end": {
          "line": 59,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2390,
      "end": 2391,
      "loc": {
        "start": {
          "line": 59,
          "column": 49
        },
        "end": {
          "line": 59,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "id",
      "start": 2391,
      "end": 2393,
      "loc": {
        "start": {
          "line": 59,
          "column": 50
        },
        "end": {
          "line": 59,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 2394,
      "end": 2397,
      "loc": {
        "start": {
          "line": 59,
          "column": 53
        },
        "end": {
          "line": 59,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentID",
      "start": 2398,
      "end": 2409,
      "loc": {
        "start": {
          "line": 59,
          "column": 57
        },
        "end": {
          "line": 59,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2409,
      "end": 2410,
      "loc": {
        "start": {
          "line": 59,
          "column": 68
        },
        "end": {
          "line": 59,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2411,
      "end": 2412,
      "loc": {
        "start": {
          "line": 59,
          "column": 70
        },
        "end": {
          "line": 59,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 2429,
      "end": 2432,
      "loc": {
        "start": {
          "line": 60,
          "column": 16
        },
        "end": {
          "line": 60,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "comp",
      "start": 2433,
      "end": 2437,
      "loc": {
        "start": {
          "line": 60,
          "column": 20
        },
        "end": {
          "line": 60,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2438,
      "end": 2439,
      "loc": {
        "start": {
          "line": 60,
          "column": 25
        },
        "end": {
          "line": 60,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2440,
      "end": 2444,
      "loc": {
        "start": {
          "line": 60,
          "column": 27
        },
        "end": {
          "line": 60,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2444,
      "end": 2445,
      "loc": {
        "start": {
          "line": 60,
          "column": 31
        },
        "end": {
          "line": 60,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 2445,
      "end": 2455,
      "loc": {
        "start": {
          "line": 60,
          "column": 32
        },
        "end": {
          "line": 60,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2455,
      "end": 2456,
      "loc": {
        "start": {
          "line": 60,
          "column": 42
        },
        "end": {
          "line": 60,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 2456,
      "end": 2469,
      "loc": {
        "start": {
          "line": 60,
          "column": 43
        },
        "end": {
          "line": 60,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2469,
      "end": 2470,
      "loc": {
        "start": {
          "line": 60,
          "column": 56
        },
        "end": {
          "line": 60,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2470,
      "end": 2471,
      "loc": {
        "start": {
          "line": 60,
          "column": 57
        },
        "end": {
          "line": 60,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 2471,
      "end": 2472,
      "loc": {
        "start": {
          "line": 60,
          "column": 58
        },
        "end": {
          "line": 60,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2472,
      "end": 2473,
      "loc": {
        "start": {
          "line": 60,
          "column": 59
        },
        "end": {
          "line": 60,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2473,
      "end": 2474,
      "loc": {
        "start": {
          "line": 60,
          "column": 60
        },
        "end": {
          "line": 60,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2491,
      "end": 2495,
      "loc": {
        "start": {
          "line": 61,
          "column": 16
        },
        "end": {
          "line": 61,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2495,
      "end": 2496,
      "loc": {
        "start": {
          "line": 61,
          "column": 20
        },
        "end": {
          "line": 61,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 2496,
      "end": 2506,
      "loc": {
        "start": {
          "line": 61,
          "column": 21
        },
        "end": {
          "line": 61,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2506,
      "end": 2507,
      "loc": {
        "start": {
          "line": 61,
          "column": 31
        },
        "end": {
          "line": 61,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 2507,
      "end": 2520,
      "loc": {
        "start": {
          "line": 61,
          "column": 32
        },
        "end": {
          "line": 61,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2520,
      "end": 2521,
      "loc": {
        "start": {
          "line": 61,
          "column": 45
        },
        "end": {
          "line": 61,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2521,
      "end": 2522,
      "loc": {
        "start": {
          "line": 61,
          "column": 46
        },
        "end": {
          "line": 61,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "splice",
      "start": 2522,
      "end": 2528,
      "loc": {
        "start": {
          "line": 61,
          "column": 47
        },
        "end": {
          "line": 61,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2528,
      "end": 2529,
      "loc": {
        "start": {
          "line": 61,
          "column": 53
        },
        "end": {
          "line": 61,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 2529,
      "end": 2530,
      "loc": {
        "start": {
          "line": 61,
          "column": 54
        },
        "end": {
          "line": 61,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2530,
      "end": 2531,
      "loc": {
        "start": {
          "line": 61,
          "column": 55
        },
        "end": {
          "line": 61,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 2532,
      "end": 2533,
      "loc": {
        "start": {
          "line": 61,
          "column": 57
        },
        "end": {
          "line": 61,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2533,
      "end": 2534,
      "loc": {
        "start": {
          "line": 61,
          "column": 58
        },
        "end": {
          "line": 61,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2534,
      "end": 2535,
      "loc": {
        "start": {
          "line": 61,
          "column": 59
        },
        "end": {
          "line": 61,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "comp",
      "start": 2552,
      "end": 2556,
      "loc": {
        "start": {
          "line": 62,
          "column": 16
        },
        "end": {
          "line": 62,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2556,
      "end": 2557,
      "loc": {
        "start": {
          "line": 62,
          "column": 20
        },
        "end": {
          "line": 62,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "end",
      "start": 2557,
      "end": 2560,
      "loc": {
        "start": {
          "line": 62,
          "column": 21
        },
        "end": {
          "line": 62,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2560,
      "end": 2561,
      "loc": {
        "start": {
          "line": 62,
          "column": 24
        },
        "end": {
          "line": 62,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2561,
      "end": 2562,
      "loc": {
        "start": {
          "line": 62,
          "column": 25
        },
        "end": {
          "line": 62,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2562,
      "end": 2563,
      "loc": {
        "start": {
          "line": 62,
          "column": 26
        },
        "end": {
          "line": 62,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2580,
      "end": 2586,
      "loc": {
        "start": {
          "line": 63,
          "column": 16
        },
        "end": {
          "line": 63,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 2587,
      "end": 2591,
      "loc": {
        "start": {
          "line": 63,
          "column": 23
        },
        "end": {
          "line": 63,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2591,
      "end": 2592,
      "loc": {
        "start": {
          "line": 63,
          "column": 27
        },
        "end": {
          "line": 63,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2605,
      "end": 2606,
      "loc": {
        "start": {
          "line": 64,
          "column": 12
        },
        "end": {
          "line": 64,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2615,
      "end": 2616,
      "loc": {
        "start": {
          "line": 65,
          "column": 8
        },
        "end": {
          "line": 65,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2625,
      "end": 2631,
      "loc": {
        "start": {
          "line": 66,
          "column": 8
        },
        "end": {
          "line": 66,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 2632,
      "end": 2637,
      "loc": {
        "start": {
          "line": 66,
          "column": 15
        },
        "end": {
          "line": 66,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2637,
      "end": 2638,
      "loc": {
        "start": {
          "line": 66,
          "column": 20
        },
        "end": {
          "line": 66,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2643,
      "end": 2644,
      "loc": {
        "start": {
          "line": 67,
          "column": 4
        },
        "end": {
          "line": 67,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Removes all Components of the named type.\n     * \n     * @param {string} componentName The name of the components to clear.\n     ",
      "start": 2650,
      "end": 2792,
      "loc": {
        "start": {
          "line": 69,
          "column": 4
        },
        "end": {
          "line": 73,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "removeComponents",
      "start": 2797,
      "end": 2813,
      "loc": {
        "start": {
          "line": 74,
          "column": 4
        },
        "end": {
          "line": 74,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2813,
      "end": 2814,
      "loc": {
        "start": {
          "line": 74,
          "column": 20
        },
        "end": {
          "line": 74,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 2814,
      "end": 2827,
      "loc": {
        "start": {
          "line": 74,
          "column": 21
        },
        "end": {
          "line": 74,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2827,
      "end": 2828,
      "loc": {
        "start": {
          "line": 74,
          "column": 34
        },
        "end": {
          "line": 74,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2829,
      "end": 2830,
      "loc": {
        "start": {
          "line": 74,
          "column": 36
        },
        "end": {
          "line": 74,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2839,
      "end": 2841,
      "loc": {
        "start": {
          "line": 75,
          "column": 8
        },
        "end": {
          "line": 75,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2842,
      "end": 2843,
      "loc": {
        "start": {
          "line": 75,
          "column": 11
        },
        "end": {
          "line": 75,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2843,
      "end": 2847,
      "loc": {
        "start": {
          "line": 75,
          "column": 12
        },
        "end": {
          "line": 75,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2847,
      "end": 2848,
      "loc": {
        "start": {
          "line": 75,
          "column": 16
        },
        "end": {
          "line": 75,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 2848,
      "end": 2858,
      "loc": {
        "start": {
          "line": 75,
          "column": 17
        },
        "end": {
          "line": 75,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2858,
      "end": 2859,
      "loc": {
        "start": {
          "line": 75,
          "column": 27
        },
        "end": {
          "line": 75,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 2859,
      "end": 2872,
      "loc": {
        "start": {
          "line": 75,
          "column": 28
        },
        "end": {
          "line": 75,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2872,
      "end": 2873,
      "loc": {
        "start": {
          "line": 75,
          "column": 41
        },
        "end": {
          "line": 75,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "==",
      "start": 2874,
      "end": 2876,
      "loc": {
        "start": {
          "line": 75,
          "column": 43
        },
        "end": {
          "line": 75,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 2877,
      "end": 2881,
      "loc": {
        "start": {
          "line": 75,
          "column": 46
        },
        "end": {
          "line": 75,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2881,
      "end": 2882,
      "loc": {
        "start": {
          "line": 75,
          "column": 50
        },
        "end": {
          "line": 75,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2895,
      "end": 2901,
      "loc": {
        "start": {
          "line": 76,
          "column": 12
        },
        "end": {
          "line": 76,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 2902,
      "end": 2907,
      "loc": {
        "start": {
          "line": 76,
          "column": 19
        },
        "end": {
          "line": 76,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2907,
      "end": 2908,
      "loc": {
        "start": {
          "line": 76,
          "column": 24
        },
        "end": {
          "line": 76,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 2917,
      "end": 2920,
      "loc": {
        "start": {
          "line": 77,
          "column": 8
        },
        "end": {
          "line": 77,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2921,
      "end": 2922,
      "loc": {
        "start": {
          "line": 77,
          "column": 12
        },
        "end": {
          "line": 77,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 2922,
      "end": 2925,
      "loc": {
        "start": {
          "line": 77,
          "column": 13
        },
        "end": {
          "line": 77,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 2926,
      "end": 2927,
      "loc": {
        "start": {
          "line": 77,
          "column": 17
        },
        "end": {
          "line": 77,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2928,
      "end": 2929,
      "loc": {
        "start": {
          "line": 77,
          "column": 19
        },
        "end": {
          "line": 77,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2930,
      "end": 2934,
      "loc": {
        "start": {
          "line": 77,
          "column": 21
        },
        "end": {
          "line": 77,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2934,
      "end": 2935,
      "loc": {
        "start": {
          "line": 77,
          "column": 25
        },
        "end": {
          "line": 77,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 2935,
      "end": 2945,
      "loc": {
        "start": {
          "line": 77,
          "column": 26
        },
        "end": {
          "line": 77,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2945,
      "end": 2946,
      "loc": {
        "start": {
          "line": 77,
          "column": 36
        },
        "end": {
          "line": 77,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 2946,
      "end": 2959,
      "loc": {
        "start": {
          "line": 77,
          "column": 37
        },
        "end": {
          "line": 77,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2959,
      "end": 2960,
      "loc": {
        "start": {
          "line": 77,
          "column": 50
        },
        "end": {
          "line": 77,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2960,
      "end": 2961,
      "loc": {
        "start": {
          "line": 77,
          "column": 51
        },
        "end": {
          "line": 77,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 2961,
      "end": 2967,
      "loc": {
        "start": {
          "line": 77,
          "column": 52
        },
        "end": {
          "line": 77,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 2968,
      "end": 2969,
      "loc": {
        "start": {
          "line": 77,
          "column": 59
        },
        "end": {
          "line": 77,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 2970,
      "end": 2971,
      "loc": {
        "start": {
          "line": 77,
          "column": 61
        },
        "end": {
          "line": 77,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2971,
      "end": 2972,
      "loc": {
        "start": {
          "line": 77,
          "column": 62
        },
        "end": {
          "line": 77,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 2973,
      "end": 2974,
      "loc": {
        "start": {
          "line": 77,
          "column": 64
        },
        "end": {
          "line": 77,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">=",
      "start": 2975,
      "end": 2977,
      "loc": {
        "start": {
          "line": 77,
          "column": 66
        },
        "end": {
          "line": 77,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 2978,
      "end": 2979,
      "loc": {
        "start": {
          "line": 77,
          "column": 69
        },
        "end": {
          "line": 77,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2979,
      "end": 2980,
      "loc": {
        "start": {
          "line": 77,
          "column": 70
        },
        "end": {
          "line": 77,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 2981,
      "end": 2982,
      "loc": {
        "start": {
          "line": 77,
          "column": 72
        },
        "end": {
          "line": 77,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "++/--",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": true,
        "binop": null
      },
      "value": "--",
      "start": 2982,
      "end": 2984,
      "loc": {
        "start": {
          "line": 77,
          "column": 73
        },
        "end": {
          "line": 77,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2984,
      "end": 2985,
      "loc": {
        "start": {
          "line": 77,
          "column": 75
        },
        "end": {
          "line": 77,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2986,
      "end": 2987,
      "loc": {
        "start": {
          "line": 77,
          "column": 77
        },
        "end": {
          "line": 77,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 3000,
      "end": 3003,
      "loc": {
        "start": {
          "line": 78,
          "column": 12
        },
        "end": {
          "line": 78,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "comp",
      "start": 3004,
      "end": 3008,
      "loc": {
        "start": {
          "line": 78,
          "column": 16
        },
        "end": {
          "line": 78,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3009,
      "end": 3010,
      "loc": {
        "start": {
          "line": 78,
          "column": 21
        },
        "end": {
          "line": 78,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3011,
      "end": 3015,
      "loc": {
        "start": {
          "line": 78,
          "column": 23
        },
        "end": {
          "line": 78,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3015,
      "end": 3016,
      "loc": {
        "start": {
          "line": 78,
          "column": 27
        },
        "end": {
          "line": 78,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 3016,
      "end": 3026,
      "loc": {
        "start": {
          "line": 78,
          "column": 28
        },
        "end": {
          "line": 78,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3026,
      "end": 3027,
      "loc": {
        "start": {
          "line": 78,
          "column": 38
        },
        "end": {
          "line": 78,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 3027,
      "end": 3040,
      "loc": {
        "start": {
          "line": 78,
          "column": 39
        },
        "end": {
          "line": 78,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3040,
      "end": 3041,
      "loc": {
        "start": {
          "line": 78,
          "column": 52
        },
        "end": {
          "line": 78,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3041,
      "end": 3042,
      "loc": {
        "start": {
          "line": 78,
          "column": 53
        },
        "end": {
          "line": 78,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 3042,
      "end": 3043,
      "loc": {
        "start": {
          "line": 78,
          "column": 54
        },
        "end": {
          "line": 78,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3043,
      "end": 3044,
      "loc": {
        "start": {
          "line": 78,
          "column": 55
        },
        "end": {
          "line": 78,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3044,
      "end": 3045,
      "loc": {
        "start": {
          "line": 78,
          "column": 56
        },
        "end": {
          "line": 78,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3058,
      "end": 3062,
      "loc": {
        "start": {
          "line": 79,
          "column": 12
        },
        "end": {
          "line": 79,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3062,
      "end": 3063,
      "loc": {
        "start": {
          "line": 79,
          "column": 16
        },
        "end": {
          "line": 79,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 3063,
      "end": 3073,
      "loc": {
        "start": {
          "line": 79,
          "column": 17
        },
        "end": {
          "line": 79,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3073,
      "end": 3074,
      "loc": {
        "start": {
          "line": 79,
          "column": 27
        },
        "end": {
          "line": 79,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 3074,
      "end": 3087,
      "loc": {
        "start": {
          "line": 79,
          "column": 28
        },
        "end": {
          "line": 79,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3087,
      "end": 3088,
      "loc": {
        "start": {
          "line": 79,
          "column": 41
        },
        "end": {
          "line": 79,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3088,
      "end": 3089,
      "loc": {
        "start": {
          "line": 79,
          "column": 42
        },
        "end": {
          "line": 79,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "splice",
      "start": 3089,
      "end": 3095,
      "loc": {
        "start": {
          "line": 79,
          "column": 43
        },
        "end": {
          "line": 79,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3095,
      "end": 3096,
      "loc": {
        "start": {
          "line": 79,
          "column": 49
        },
        "end": {
          "line": 79,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 3096,
      "end": 3097,
      "loc": {
        "start": {
          "line": 79,
          "column": 50
        },
        "end": {
          "line": 79,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3097,
      "end": 3098,
      "loc": {
        "start": {
          "line": 79,
          "column": 51
        },
        "end": {
          "line": 79,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 3099,
      "end": 3100,
      "loc": {
        "start": {
          "line": 79,
          "column": 53
        },
        "end": {
          "line": 79,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3100,
      "end": 3101,
      "loc": {
        "start": {
          "line": 79,
          "column": 54
        },
        "end": {
          "line": 79,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3101,
      "end": 3102,
      "loc": {
        "start": {
          "line": 79,
          "column": 55
        },
        "end": {
          "line": 79,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "comp",
      "start": 3115,
      "end": 3119,
      "loc": {
        "start": {
          "line": 80,
          "column": 12
        },
        "end": {
          "line": 80,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3119,
      "end": 3120,
      "loc": {
        "start": {
          "line": 80,
          "column": 16
        },
        "end": {
          "line": 80,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "end",
      "start": 3120,
      "end": 3123,
      "loc": {
        "start": {
          "line": 80,
          "column": 17
        },
        "end": {
          "line": 80,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3123,
      "end": 3124,
      "loc": {
        "start": {
          "line": 80,
          "column": 20
        },
        "end": {
          "line": 80,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3124,
      "end": 3125,
      "loc": {
        "start": {
          "line": 80,
          "column": 21
        },
        "end": {
          "line": 80,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3125,
      "end": 3126,
      "loc": {
        "start": {
          "line": 80,
          "column": 22
        },
        "end": {
          "line": 80,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3135,
      "end": 3136,
      "loc": {
        "start": {
          "line": 81,
          "column": 8
        },
        "end": {
          "line": 81,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3145,
      "end": 3151,
      "loc": {
        "start": {
          "line": 82,
          "column": 8
        },
        "end": {
          "line": 82,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 3152,
      "end": 3156,
      "loc": {
        "start": {
          "line": 82,
          "column": 15
        },
        "end": {
          "line": 82,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3156,
      "end": 3157,
      "loc": {
        "start": {
          "line": 82,
          "column": 19
        },
        "end": {
          "line": 82,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3162,
      "end": 3163,
      "loc": {
        "start": {
          "line": 83,
          "column": 4
        },
        "end": {
          "line": 83,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Removes all components except for the Transform component.\n     ",
      "start": 3169,
      "end": 3246,
      "loc": {
        "start": {
          "line": 85,
          "column": 4
        },
        "end": {
          "line": 87,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "removeAllComponents",
      "start": 3251,
      "end": 3270,
      "loc": {
        "start": {
          "line": 88,
          "column": 4
        },
        "end": {
          "line": 88,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3270,
      "end": 3271,
      "loc": {
        "start": {
          "line": 88,
          "column": 23
        },
        "end": {
          "line": 88,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3271,
      "end": 3272,
      "loc": {
        "start": {
          "line": 88,
          "column": 24
        },
        "end": {
          "line": 88,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3273,
      "end": 3274,
      "loc": {
        "start": {
          "line": 88,
          "column": 26
        },
        "end": {
          "line": 88,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 3283,
      "end": 3286,
      "loc": {
        "start": {
          "line": 89,
          "column": 8
        },
        "end": {
          "line": 89,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 3287,
      "end": 3296,
      "loc": {
        "start": {
          "line": 89,
          "column": 12
        },
        "end": {
          "line": 89,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3297,
      "end": 3298,
      "loc": {
        "start": {
          "line": 89,
          "column": 22
        },
        "end": {
          "line": 89,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 3299,
      "end": 3305,
      "loc": {
        "start": {
          "line": 89,
          "column": 24
        },
        "end": {
          "line": 89,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3305,
      "end": 3306,
      "loc": {
        "start": {
          "line": 89,
          "column": 30
        },
        "end": {
          "line": 89,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "keys",
      "start": 3306,
      "end": 3310,
      "loc": {
        "start": {
          "line": 89,
          "column": 31
        },
        "end": {
          "line": 89,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3310,
      "end": 3311,
      "loc": {
        "start": {
          "line": 89,
          "column": 35
        },
        "end": {
          "line": 89,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3311,
      "end": 3315,
      "loc": {
        "start": {
          "line": 89,
          "column": 36
        },
        "end": {
          "line": 89,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3315,
      "end": 3316,
      "loc": {
        "start": {
          "line": 89,
          "column": 40
        },
        "end": {
          "line": 89,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 3316,
      "end": 3326,
      "loc": {
        "start": {
          "line": 89,
          "column": 41
        },
        "end": {
          "line": 89,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3326,
      "end": 3327,
      "loc": {
        "start": {
          "line": 89,
          "column": 51
        },
        "end": {
          "line": 89,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3327,
      "end": 3328,
      "loc": {
        "start": {
          "line": 89,
          "column": 52
        },
        "end": {
          "line": 89,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 3337,
      "end": 3340,
      "loc": {
        "start": {
          "line": 90,
          "column": 8
        },
        "end": {
          "line": 90,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3341,
      "end": 3342,
      "loc": {
        "start": {
          "line": 90,
          "column": 12
        },
        "end": {
          "line": 90,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 3342,
      "end": 3345,
      "loc": {
        "start": {
          "line": 90,
          "column": 13
        },
        "end": {
          "line": 90,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 3346,
      "end": 3347,
      "loc": {
        "start": {
          "line": 90,
          "column": 17
        },
        "end": {
          "line": 90,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3348,
      "end": 3349,
      "loc": {
        "start": {
          "line": 90,
          "column": 19
        },
        "end": {
          "line": 90,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 3350,
      "end": 3351,
      "loc": {
        "start": {
          "line": 90,
          "column": 21
        },
        "end": {
          "line": 90,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3351,
      "end": 3352,
      "loc": {
        "start": {
          "line": 90,
          "column": 22
        },
        "end": {
          "line": 90,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 3353,
      "end": 3354,
      "loc": {
        "start": {
          "line": 90,
          "column": 24
        },
        "end": {
          "line": 90,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 3355,
      "end": 3356,
      "loc": {
        "start": {
          "line": 90,
          "column": 26
        },
        "end": {
          "line": 90,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 3357,
      "end": 3366,
      "loc": {
        "start": {
          "line": 90,
          "column": 28
        },
        "end": {
          "line": 90,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3366,
      "end": 3367,
      "loc": {
        "start": {
          "line": 90,
          "column": 37
        },
        "end": {
          "line": 90,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 3367,
      "end": 3373,
      "loc": {
        "start": {
          "line": 90,
          "column": 38
        },
        "end": {
          "line": 90,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3373,
      "end": 3374,
      "loc": {
        "start": {
          "line": 90,
          "column": 44
        },
        "end": {
          "line": 90,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 3375,
      "end": 3376,
      "loc": {
        "start": {
          "line": 90,
          "column": 46
        },
        "end": {
          "line": 90,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "++/--",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": true,
        "binop": null
      },
      "value": "++",
      "start": 3376,
      "end": 3378,
      "loc": {
        "start": {
          "line": 90,
          "column": 47
        },
        "end": {
          "line": 90,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3378,
      "end": 3379,
      "loc": {
        "start": {
          "line": 90,
          "column": 49
        },
        "end": {
          "line": 90,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3380,
      "end": 3381,
      "loc": {
        "start": {
          "line": 90,
          "column": 51
        },
        "end": {
          "line": 90,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 3394,
      "end": 3397,
      "loc": {
        "start": {
          "line": 91,
          "column": 12
        },
        "end": {
          "line": 91,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 3398,
      "end": 3410,
      "loc": {
        "start": {
          "line": 91,
          "column": 16
        },
        "end": {
          "line": 91,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3411,
      "end": 3412,
      "loc": {
        "start": {
          "line": 91,
          "column": 29
        },
        "end": {
          "line": 91,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 3413,
      "end": 3422,
      "loc": {
        "start": {
          "line": 91,
          "column": 31
        },
        "end": {
          "line": 91,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3422,
      "end": 3423,
      "loc": {
        "start": {
          "line": 91,
          "column": 40
        },
        "end": {
          "line": 91,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 3423,
      "end": 3424,
      "loc": {
        "start": {
          "line": 91,
          "column": 41
        },
        "end": {
          "line": 91,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3424,
      "end": 3425,
      "loc": {
        "start": {
          "line": 91,
          "column": 42
        },
        "end": {
          "line": 91,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3425,
      "end": 3426,
      "loc": {
        "start": {
          "line": 91,
          "column": 43
        },
        "end": {
          "line": 91,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 3439,
      "end": 3441,
      "loc": {
        "start": {
          "line": 92,
          "column": 12
        },
        "end": {
          "line": 92,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3442,
      "end": 3443,
      "loc": {
        "start": {
          "line": 92,
          "column": 15
        },
        "end": {
          "line": 92,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 3443,
      "end": 3455,
      "loc": {
        "start": {
          "line": 92,
          "column": 16
        },
        "end": {
          "line": 92,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 3456,
      "end": 3459,
      "loc": {
        "start": {
          "line": 92,
          "column": 29
        },
        "end": {
          "line": 92,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "Transform",
      "start": 3460,
      "end": 3471,
      "loc": {
        "start": {
          "line": 92,
          "column": 33
        },
        "end": {
          "line": 92,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3471,
      "end": 3472,
      "loc": {
        "start": {
          "line": 92,
          "column": 44
        },
        "end": {
          "line": 92,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "continue",
        "keyword": "continue",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "continue",
      "start": 3489,
      "end": 3497,
      "loc": {
        "start": {
          "line": 93,
          "column": 16
        },
        "end": {
          "line": 93,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3497,
      "end": 3498,
      "loc": {
        "start": {
          "line": 93,
          "column": 24
        },
        "end": {
          "line": 93,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 3511,
      "end": 3514,
      "loc": {
        "start": {
          "line": 94,
          "column": 12
        },
        "end": {
          "line": 94,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3515,
      "end": 3516,
      "loc": {
        "start": {
          "line": 94,
          "column": 16
        },
        "end": {
          "line": 94,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 3516,
      "end": 3519,
      "loc": {
        "start": {
          "line": 94,
          "column": 17
        },
        "end": {
          "line": 94,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 3520,
      "end": 3522,
      "loc": {
        "start": {
          "line": 94,
          "column": 21
        },
        "end": {
          "line": 94,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3523,
      "end": 3524,
      "loc": {
        "start": {
          "line": 94,
          "column": 24
        },
        "end": {
          "line": 94,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 3525,
      "end": 3526,
      "loc": {
        "start": {
          "line": 94,
          "column": 26
        },
        "end": {
          "line": 94,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3526,
      "end": 3527,
      "loc": {
        "start": {
          "line": 94,
          "column": 27
        },
        "end": {
          "line": 94,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 3528,
      "end": 3530,
      "loc": {
        "start": {
          "line": 94,
          "column": 29
        },
        "end": {
          "line": 94,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 3531,
      "end": 3532,
      "loc": {
        "start": {
          "line": 94,
          "column": 32
        },
        "end": {
          "line": 94,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3533,
      "end": 3537,
      "loc": {
        "start": {
          "line": 94,
          "column": 34
        },
        "end": {
          "line": 94,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3537,
      "end": 3538,
      "loc": {
        "start": {
          "line": 94,
          "column": 38
        },
        "end": {
          "line": 94,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 3538,
      "end": 3548,
      "loc": {
        "start": {
          "line": 94,
          "column": 39
        },
        "end": {
          "line": 94,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3548,
      "end": 3549,
      "loc": {
        "start": {
          "line": 94,
          "column": 49
        },
        "end": {
          "line": 94,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 3549,
      "end": 3561,
      "loc": {
        "start": {
          "line": 94,
          "column": 50
        },
        "end": {
          "line": 94,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3561,
      "end": 3562,
      "loc": {
        "start": {
          "line": 94,
          "column": 62
        },
        "end": {
          "line": 94,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3562,
      "end": 3563,
      "loc": {
        "start": {
          "line": 94,
          "column": 63
        },
        "end": {
          "line": 94,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 3563,
      "end": 3569,
      "loc": {
        "start": {
          "line": 94,
          "column": 64
        },
        "end": {
          "line": 94,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3569,
      "end": 3570,
      "loc": {
        "start": {
          "line": 94,
          "column": 70
        },
        "end": {
          "line": 94,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 3571,
      "end": 3573,
      "loc": {
        "start": {
          "line": 94,
          "column": 72
        },
        "end": {
          "line": 94,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "++/--",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": true,
        "binop": null
      },
      "value": "++",
      "start": 3573,
      "end": 3575,
      "loc": {
        "start": {
          "line": 94,
          "column": 74
        },
        "end": {
          "line": 94,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3575,
      "end": 3576,
      "loc": {
        "start": {
          "line": 94,
          "column": 76
        },
        "end": {
          "line": 94,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3577,
      "end": 3578,
      "loc": {
        "start": {
          "line": 94,
          "column": 78
        },
        "end": {
          "line": 94,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3595,
      "end": 3599,
      "loc": {
        "start": {
          "line": 95,
          "column": 16
        },
        "end": {
          "line": 95,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3599,
      "end": 3600,
      "loc": {
        "start": {
          "line": 95,
          "column": 20
        },
        "end": {
          "line": 95,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 3600,
      "end": 3610,
      "loc": {
        "start": {
          "line": 95,
          "column": 21
        },
        "end": {
          "line": 95,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3610,
      "end": 3611,
      "loc": {
        "start": {
          "line": 95,
          "column": 31
        },
        "end": {
          "line": 95,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 3611,
      "end": 3623,
      "loc": {
        "start": {
          "line": 95,
          "column": 32
        },
        "end": {
          "line": 95,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3623,
      "end": 3624,
      "loc": {
        "start": {
          "line": 95,
          "column": 44
        },
        "end": {
          "line": 95,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3624,
      "end": 3625,
      "loc": {
        "start": {
          "line": 95,
          "column": 45
        },
        "end": {
          "line": 95,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 3625,
      "end": 3627,
      "loc": {
        "start": {
          "line": 95,
          "column": 46
        },
        "end": {
          "line": 95,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3627,
      "end": 3628,
      "loc": {
        "start": {
          "line": 95,
          "column": 48
        },
        "end": {
          "line": 95,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3628,
      "end": 3629,
      "loc": {
        "start": {
          "line": 95,
          "column": 49
        },
        "end": {
          "line": 95,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "end",
      "start": 3629,
      "end": 3632,
      "loc": {
        "start": {
          "line": 95,
          "column": 50
        },
        "end": {
          "line": 95,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3632,
      "end": 3633,
      "loc": {
        "start": {
          "line": 95,
          "column": 53
        },
        "end": {
          "line": 95,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3633,
      "end": 3634,
      "loc": {
        "start": {
          "line": 95,
          "column": 54
        },
        "end": {
          "line": 95,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3634,
      "end": 3635,
      "loc": {
        "start": {
          "line": 95,
          "column": 55
        },
        "end": {
          "line": 95,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3648,
      "end": 3649,
      "loc": {
        "start": {
          "line": 96,
          "column": 12
        },
        "end": {
          "line": 96,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3662,
      "end": 3666,
      "loc": {
        "start": {
          "line": 97,
          "column": 12
        },
        "end": {
          "line": 97,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3666,
      "end": 3667,
      "loc": {
        "start": {
          "line": 97,
          "column": 16
        },
        "end": {
          "line": 97,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 3667,
      "end": 3677,
      "loc": {
        "start": {
          "line": 97,
          "column": 17
        },
        "end": {
          "line": 97,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3677,
      "end": 3678,
      "loc": {
        "start": {
          "line": 97,
          "column": 27
        },
        "end": {
          "line": 97,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 3678,
      "end": 3690,
      "loc": {
        "start": {
          "line": 97,
          "column": 28
        },
        "end": {
          "line": 97,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3690,
      "end": 3691,
      "loc": {
        "start": {
          "line": 97,
          "column": 40
        },
        "end": {
          "line": 97,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3692,
      "end": 3693,
      "loc": {
        "start": {
          "line": 97,
          "column": 42
        },
        "end": {
          "line": 97,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3694,
      "end": 3695,
      "loc": {
        "start": {
          "line": 97,
          "column": 44
        },
        "end": {
          "line": 97,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3695,
      "end": 3696,
      "loc": {
        "start": {
          "line": 97,
          "column": 45
        },
        "end": {
          "line": 97,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3696,
      "end": 3697,
      "loc": {
        "start": {
          "line": 97,
          "column": 46
        },
        "end": {
          "line": 97,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3706,
      "end": 3707,
      "loc": {
        "start": {
          "line": 98,
          "column": 8
        },
        "end": {
          "line": 98,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3716,
      "end": 3722,
      "loc": {
        "start": {
          "line": 99,
          "column": 8
        },
        "end": {
          "line": 99,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 3723,
      "end": 3727,
      "loc": {
        "start": {
          "line": 99,
          "column": 15
        },
        "end": {
          "line": 99,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3727,
      "end": 3728,
      "loc": {
        "start": {
          "line": 99,
          "column": 19
        },
        "end": {
          "line": 99,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3733,
      "end": 3734,
      "loc": {
        "start": {
          "line": 100,
          "column": 4
        },
        "end": {
          "line": 100,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Returns a boolean on if there is a component of type {componentName}.\n     * \n     * @param {string} componentName Name of the component type to search for.\n     * \n     * @returns {boolean} true if there is at least one component of this type.\n     ",
      "start": 3740,
      "end": 4003,
      "loc": {
        "start": {
          "line": 102,
          "column": 4
        },
        "end": {
          "line": 108,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hasComponent",
      "start": 4008,
      "end": 4020,
      "loc": {
        "start": {
          "line": 109,
          "column": 4
        },
        "end": {
          "line": 109,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4020,
      "end": 4021,
      "loc": {
        "start": {
          "line": 109,
          "column": 16
        },
        "end": {
          "line": 109,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 4021,
      "end": 4034,
      "loc": {
        "start": {
          "line": 109,
          "column": 17
        },
        "end": {
          "line": 109,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4034,
      "end": 4035,
      "loc": {
        "start": {
          "line": 109,
          "column": 30
        },
        "end": {
          "line": 109,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4036,
      "end": 4037,
      "loc": {
        "start": {
          "line": 109,
          "column": 32
        },
        "end": {
          "line": 109,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4046,
      "end": 4048,
      "loc": {
        "start": {
          "line": 110,
          "column": 8
        },
        "end": {
          "line": 110,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4049,
      "end": 4050,
      "loc": {
        "start": {
          "line": 110,
          "column": 11
        },
        "end": {
          "line": 110,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4050,
      "end": 4054,
      "loc": {
        "start": {
          "line": 110,
          "column": 12
        },
        "end": {
          "line": 110,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4054,
      "end": 4055,
      "loc": {
        "start": {
          "line": 110,
          "column": 16
        },
        "end": {
          "line": 110,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 4055,
      "end": 4065,
      "loc": {
        "start": {
          "line": 110,
          "column": 17
        },
        "end": {
          "line": 110,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4065,
      "end": 4066,
      "loc": {
        "start": {
          "line": 110,
          "column": 27
        },
        "end": {
          "line": 110,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 4066,
      "end": 4079,
      "loc": {
        "start": {
          "line": 110,
          "column": 28
        },
        "end": {
          "line": 110,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4079,
      "end": 4080,
      "loc": {
        "start": {
          "line": 110,
          "column": 41
        },
        "end": {
          "line": 110,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "==",
      "start": 4081,
      "end": 4083,
      "loc": {
        "start": {
          "line": 110,
          "column": 43
        },
        "end": {
          "line": 110,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 4084,
      "end": 4088,
      "loc": {
        "start": {
          "line": 110,
          "column": 46
        },
        "end": {
          "line": 110,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4088,
      "end": 4089,
      "loc": {
        "start": {
          "line": 110,
          "column": 50
        },
        "end": {
          "line": 110,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4090,
      "end": 4091,
      "loc": {
        "start": {
          "line": 110,
          "column": 52
        },
        "end": {
          "line": 110,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4104,
      "end": 4110,
      "loc": {
        "start": {
          "line": 111,
          "column": 12
        },
        "end": {
          "line": 111,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 4111,
      "end": 4116,
      "loc": {
        "start": {
          "line": 111,
          "column": 19
        },
        "end": {
          "line": 111,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4116,
      "end": 4117,
      "loc": {
        "start": {
          "line": 111,
          "column": 24
        },
        "end": {
          "line": 111,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4126,
      "end": 4127,
      "loc": {
        "start": {
          "line": 112,
          "column": 8
        },
        "end": {
          "line": 112,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4136,
      "end": 4142,
      "loc": {
        "start": {
          "line": 113,
          "column": 8
        },
        "end": {
          "line": 113,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4143,
      "end": 4147,
      "loc": {
        "start": {
          "line": 113,
          "column": 15
        },
        "end": {
          "line": 113,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4147,
      "end": 4148,
      "loc": {
        "start": {
          "line": 113,
          "column": 19
        },
        "end": {
          "line": 113,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 4148,
      "end": 4158,
      "loc": {
        "start": {
          "line": 113,
          "column": 20
        },
        "end": {
          "line": 113,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4158,
      "end": 4159,
      "loc": {
        "start": {
          "line": 113,
          "column": 30
        },
        "end": {
          "line": 113,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 4159,
      "end": 4172,
      "loc": {
        "start": {
          "line": 113,
          "column": 31
        },
        "end": {
          "line": 113,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4172,
      "end": 4173,
      "loc": {
        "start": {
          "line": 113,
          "column": 44
        },
        "end": {
          "line": 113,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4173,
      "end": 4174,
      "loc": {
        "start": {
          "line": 113,
          "column": 45
        },
        "end": {
          "line": 113,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 4174,
      "end": 4180,
      "loc": {
        "start": {
          "line": 113,
          "column": 46
        },
        "end": {
          "line": 113,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 4181,
      "end": 4182,
      "loc": {
        "start": {
          "line": 113,
          "column": 53
        },
        "end": {
          "line": 113,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 4183,
      "end": 4184,
      "loc": {
        "start": {
          "line": 113,
          "column": 55
        },
        "end": {
          "line": 113,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4184,
      "end": 4185,
      "loc": {
        "start": {
          "line": 113,
          "column": 56
        },
        "end": {
          "line": 113,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4190,
      "end": 4191,
      "loc": {
        "start": {
          "line": 114,
          "column": 4
        },
        "end": {
          "line": 114,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Returns a component of type {componentName}. The second parameter can determine which \n     * Component of that type to return if there are more than 1. \n     * \n     * @param {string} componentName Name of the component type to return.\n     * @param {*} index Index of the component to get. Defaults to first component.\n     ",
      "start": 4197,
      "end": 4536,
      "loc": {
        "start": {
          "line": 116,
          "column": 4
        },
        "end": {
          "line": 122,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getComponent",
      "start": 4541,
      "end": 4553,
      "loc": {
        "start": {
          "line": 123,
          "column": 4
        },
        "end": {
          "line": 123,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4553,
      "end": 4554,
      "loc": {
        "start": {
          "line": 123,
          "column": 16
        },
        "end": {
          "line": 123,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 4554,
      "end": 4567,
      "loc": {
        "start": {
          "line": 123,
          "column": 17
        },
        "end": {
          "line": 123,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4567,
      "end": 4568,
      "loc": {
        "start": {
          "line": 123,
          "column": 30
        },
        "end": {
          "line": 123,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "index",
      "start": 4569,
      "end": 4574,
      "loc": {
        "start": {
          "line": 123,
          "column": 32
        },
        "end": {
          "line": 123,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4575,
      "end": 4576,
      "loc": {
        "start": {
          "line": 123,
          "column": 38
        },
        "end": {
          "line": 123,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 4577,
      "end": 4578,
      "loc": {
        "start": {
          "line": 123,
          "column": 40
        },
        "end": {
          "line": 123,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4578,
      "end": 4579,
      "loc": {
        "start": {
          "line": 123,
          "column": 41
        },
        "end": {
          "line": 123,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4580,
      "end": 4581,
      "loc": {
        "start": {
          "line": 123,
          "column": 43
        },
        "end": {
          "line": 123,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4590,
      "end": 4592,
      "loc": {
        "start": {
          "line": 124,
          "column": 8
        },
        "end": {
          "line": 124,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4593,
      "end": 4594,
      "loc": {
        "start": {
          "line": 124,
          "column": 11
        },
        "end": {
          "line": 124,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4594,
      "end": 4598,
      "loc": {
        "start": {
          "line": 124,
          "column": 12
        },
        "end": {
          "line": 124,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4598,
      "end": 4599,
      "loc": {
        "start": {
          "line": 124,
          "column": 16
        },
        "end": {
          "line": 124,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 4599,
      "end": 4609,
      "loc": {
        "start": {
          "line": 124,
          "column": 17
        },
        "end": {
          "line": 124,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4609,
      "end": 4610,
      "loc": {
        "start": {
          "line": 124,
          "column": 27
        },
        "end": {
          "line": 124,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 4610,
      "end": 4623,
      "loc": {
        "start": {
          "line": 124,
          "column": 28
        },
        "end": {
          "line": 124,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4623,
      "end": 4624,
      "loc": {
        "start": {
          "line": 124,
          "column": 41
        },
        "end": {
          "line": 124,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "==",
      "start": 4625,
      "end": 4627,
      "loc": {
        "start": {
          "line": 124,
          "column": 43
        },
        "end": {
          "line": 124,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 4628,
      "end": 4632,
      "loc": {
        "start": {
          "line": 124,
          "column": 46
        },
        "end": {
          "line": 124,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4632,
      "end": 4633,
      "loc": {
        "start": {
          "line": 124,
          "column": 50
        },
        "end": {
          "line": 124,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4634,
      "end": 4635,
      "loc": {
        "start": {
          "line": 124,
          "column": 52
        },
        "end": {
          "line": 124,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4648,
      "end": 4654,
      "loc": {
        "start": {
          "line": 125,
          "column": 12
        },
        "end": {
          "line": 125,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 4655,
      "end": 4659,
      "loc": {
        "start": {
          "line": 125,
          "column": 19
        },
        "end": {
          "line": 125,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4659,
      "end": 4660,
      "loc": {
        "start": {
          "line": 125,
          "column": 23
        },
        "end": {
          "line": 125,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4669,
      "end": 4670,
      "loc": {
        "start": {
          "line": 126,
          "column": 8
        },
        "end": {
          "line": 126,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4679,
      "end": 4685,
      "loc": {
        "start": {
          "line": 127,
          "column": 8
        },
        "end": {
          "line": 127,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4686,
      "end": 4690,
      "loc": {
        "start": {
          "line": 127,
          "column": 15
        },
        "end": {
          "line": 127,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4690,
      "end": 4691,
      "loc": {
        "start": {
          "line": 127,
          "column": 19
        },
        "end": {
          "line": 127,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 4691,
      "end": 4701,
      "loc": {
        "start": {
          "line": 127,
          "column": 20
        },
        "end": {
          "line": 127,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4701,
      "end": 4702,
      "loc": {
        "start": {
          "line": 127,
          "column": 30
        },
        "end": {
          "line": 127,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "componentName",
      "start": 4702,
      "end": 4715,
      "loc": {
        "start": {
          "line": 127,
          "column": 31
        },
        "end": {
          "line": 127,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4715,
      "end": 4716,
      "loc": {
        "start": {
          "line": 127,
          "column": 44
        },
        "end": {
          "line": 127,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4716,
      "end": 4717,
      "loc": {
        "start": {
          "line": 127,
          "column": 45
        },
        "end": {
          "line": 127,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "index",
      "start": 4717,
      "end": 4722,
      "loc": {
        "start": {
          "line": 127,
          "column": 46
        },
        "end": {
          "line": 127,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4722,
      "end": 4723,
      "loc": {
        "start": {
          "line": 127,
          "column": 51
        },
        "end": {
          "line": 127,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4723,
      "end": 4724,
      "loc": {
        "start": {
          "line": 127,
          "column": 52
        },
        "end": {
          "line": 127,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4729,
      "end": 4730,
      "loc": {
        "start": {
          "line": 128,
          "column": 4
        },
        "end": {
          "line": 128,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Updates all components on this GameObject.\n     ",
      "start": 4740,
      "end": 4801,
      "loc": {
        "start": {
          "line": 130,
          "column": 4
        },
        "end": {
          "line": 132,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateComponents",
      "start": 4806,
      "end": 4822,
      "loc": {
        "start": {
          "line": 133,
          "column": 4
        },
        "end": {
          "line": 133,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4822,
      "end": 4823,
      "loc": {
        "start": {
          "line": 133,
          "column": 20
        },
        "end": {
          "line": 133,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4823,
      "end": 4824,
      "loc": {
        "start": {
          "line": 133,
          "column": 21
        },
        "end": {
          "line": 133,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4825,
      "end": 4826,
      "loc": {
        "start": {
          "line": 133,
          "column": 23
        },
        "end": {
          "line": 133,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 4835,
      "end": 4838,
      "loc": {
        "start": {
          "line": 134,
          "column": 8
        },
        "end": {
          "line": 134,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 4839,
      "end": 4848,
      "loc": {
        "start": {
          "line": 134,
          "column": 12
        },
        "end": {
          "line": 134,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4849,
      "end": 4850,
      "loc": {
        "start": {
          "line": 134,
          "column": 22
        },
        "end": {
          "line": 134,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 4851,
      "end": 4857,
      "loc": {
        "start": {
          "line": 134,
          "column": 24
        },
        "end": {
          "line": 134,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4857,
      "end": 4858,
      "loc": {
        "start": {
          "line": 134,
          "column": 30
        },
        "end": {
          "line": 134,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "keys",
      "start": 4858,
      "end": 4862,
      "loc": {
        "start": {
          "line": 134,
          "column": 31
        },
        "end": {
          "line": 134,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4862,
      "end": 4863,
      "loc": {
        "start": {
          "line": 134,
          "column": 35
        },
        "end": {
          "line": 134,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4863,
      "end": 4867,
      "loc": {
        "start": {
          "line": 134,
          "column": 36
        },
        "end": {
          "line": 134,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4867,
      "end": 4868,
      "loc": {
        "start": {
          "line": 134,
          "column": 40
        },
        "end": {
          "line": 134,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 4868,
      "end": 4878,
      "loc": {
        "start": {
          "line": 134,
          "column": 41
        },
        "end": {
          "line": 134,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4878,
      "end": 4879,
      "loc": {
        "start": {
          "line": 134,
          "column": 51
        },
        "end": {
          "line": 134,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4879,
      "end": 4880,
      "loc": {
        "start": {
          "line": 134,
          "column": 52
        },
        "end": {
          "line": 134,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 4889,
      "end": 4892,
      "loc": {
        "start": {
          "line": 135,
          "column": 8
        },
        "end": {
          "line": 135,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4893,
      "end": 4894,
      "loc": {
        "start": {
          "line": 135,
          "column": 12
        },
        "end": {
          "line": 135,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 4894,
      "end": 4897,
      "loc": {
        "start": {
          "line": 135,
          "column": 13
        },
        "end": {
          "line": 135,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 4898,
      "end": 4899,
      "loc": {
        "start": {
          "line": 135,
          "column": 17
        },
        "end": {
          "line": 135,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4900,
      "end": 4901,
      "loc": {
        "start": {
          "line": 135,
          "column": 19
        },
        "end": {
          "line": 135,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 4902,
      "end": 4903,
      "loc": {
        "start": {
          "line": 135,
          "column": 21
        },
        "end": {
          "line": 135,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4903,
      "end": 4904,
      "loc": {
        "start": {
          "line": 135,
          "column": 22
        },
        "end": {
          "line": 135,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 4905,
      "end": 4906,
      "loc": {
        "start": {
          "line": 135,
          "column": 24
        },
        "end": {
          "line": 135,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 4907,
      "end": 4908,
      "loc": {
        "start": {
          "line": 135,
          "column": 26
        },
        "end": {
          "line": 135,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 4909,
      "end": 4918,
      "loc": {
        "start": {
          "line": 135,
          "column": 28
        },
        "end": {
          "line": 135,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4918,
      "end": 4919,
      "loc": {
        "start": {
          "line": 135,
          "column": 37
        },
        "end": {
          "line": 135,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 4919,
      "end": 4925,
      "loc": {
        "start": {
          "line": 135,
          "column": 38
        },
        "end": {
          "line": 135,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4925,
      "end": 4926,
      "loc": {
        "start": {
          "line": 135,
          "column": 44
        },
        "end": {
          "line": 135,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 4927,
      "end": 4928,
      "loc": {
        "start": {
          "line": 135,
          "column": 46
        },
        "end": {
          "line": 135,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "++/--",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": true,
        "binop": null
      },
      "value": "++",
      "start": 4928,
      "end": 4930,
      "loc": {
        "start": {
          "line": 135,
          "column": 47
        },
        "end": {
          "line": 135,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4930,
      "end": 4931,
      "loc": {
        "start": {
          "line": 135,
          "column": 49
        },
        "end": {
          "line": 135,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4932,
      "end": 4933,
      "loc": {
        "start": {
          "line": 135,
          "column": 51
        },
        "end": {
          "line": 135,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 4946,
      "end": 4949,
      "loc": {
        "start": {
          "line": 136,
          "column": 12
        },
        "end": {
          "line": 136,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 4950,
      "end": 4962,
      "loc": {
        "start": {
          "line": 136,
          "column": 16
        },
        "end": {
          "line": 136,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4963,
      "end": 4964,
      "loc": {
        "start": {
          "line": 136,
          "column": 29
        },
        "end": {
          "line": 136,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 4965,
      "end": 4974,
      "loc": {
        "start": {
          "line": 136,
          "column": 31
        },
        "end": {
          "line": 136,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4974,
      "end": 4975,
      "loc": {
        "start": {
          "line": 136,
          "column": 40
        },
        "end": {
          "line": 136,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 4975,
      "end": 4976,
      "loc": {
        "start": {
          "line": 136,
          "column": 41
        },
        "end": {
          "line": 136,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4976,
      "end": 4977,
      "loc": {
        "start": {
          "line": 136,
          "column": 42
        },
        "end": {
          "line": 136,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4977,
      "end": 4978,
      "loc": {
        "start": {
          "line": 136,
          "column": 43
        },
        "end": {
          "line": 136,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 4991,
      "end": 4994,
      "loc": {
        "start": {
          "line": 137,
          "column": 12
        },
        "end": {
          "line": 137,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4995,
      "end": 4996,
      "loc": {
        "start": {
          "line": 137,
          "column": 16
        },
        "end": {
          "line": 137,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 4996,
      "end": 4999,
      "loc": {
        "start": {
          "line": 137,
          "column": 17
        },
        "end": {
          "line": 137,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5000,
      "end": 5002,
      "loc": {
        "start": {
          "line": 137,
          "column": 21
        },
        "end": {
          "line": 137,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5003,
      "end": 5004,
      "loc": {
        "start": {
          "line": 137,
          "column": 24
        },
        "end": {
          "line": 137,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 5005,
      "end": 5006,
      "loc": {
        "start": {
          "line": 137,
          "column": 26
        },
        "end": {
          "line": 137,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5006,
      "end": 5007,
      "loc": {
        "start": {
          "line": 137,
          "column": 27
        },
        "end": {
          "line": 137,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5008,
      "end": 5010,
      "loc": {
        "start": {
          "line": 137,
          "column": 29
        },
        "end": {
          "line": 137,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 5011,
      "end": 5012,
      "loc": {
        "start": {
          "line": 137,
          "column": 32
        },
        "end": {
          "line": 137,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5013,
      "end": 5017,
      "loc": {
        "start": {
          "line": 137,
          "column": 34
        },
        "end": {
          "line": 137,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5017,
      "end": 5018,
      "loc": {
        "start": {
          "line": 137,
          "column": 38
        },
        "end": {
          "line": 137,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 5018,
      "end": 5028,
      "loc": {
        "start": {
          "line": 137,
          "column": 39
        },
        "end": {
          "line": 137,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5028,
      "end": 5029,
      "loc": {
        "start": {
          "line": 137,
          "column": 49
        },
        "end": {
          "line": 137,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 5029,
      "end": 5041,
      "loc": {
        "start": {
          "line": 137,
          "column": 50
        },
        "end": {
          "line": 137,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5041,
      "end": 5042,
      "loc": {
        "start": {
          "line": 137,
          "column": 62
        },
        "end": {
          "line": 137,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5042,
      "end": 5043,
      "loc": {
        "start": {
          "line": 137,
          "column": 63
        },
        "end": {
          "line": 137,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 5043,
      "end": 5049,
      "loc": {
        "start": {
          "line": 137,
          "column": 64
        },
        "end": {
          "line": 137,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5049,
      "end": 5050,
      "loc": {
        "start": {
          "line": 137,
          "column": 70
        },
        "end": {
          "line": 137,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5051,
      "end": 5053,
      "loc": {
        "start": {
          "line": 137,
          "column": 72
        },
        "end": {
          "line": 137,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "++/--",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": true,
        "binop": null
      },
      "value": "++",
      "start": 5053,
      "end": 5055,
      "loc": {
        "start": {
          "line": 137,
          "column": 74
        },
        "end": {
          "line": 137,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5055,
      "end": 5056,
      "loc": {
        "start": {
          "line": 137,
          "column": 76
        },
        "end": {
          "line": 137,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5057,
      "end": 5058,
      "loc": {
        "start": {
          "line": 137,
          "column": 78
        },
        "end": {
          "line": 137,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5075,
      "end": 5079,
      "loc": {
        "start": {
          "line": 138,
          "column": 16
        },
        "end": {
          "line": 138,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5079,
      "end": 5080,
      "loc": {
        "start": {
          "line": 138,
          "column": 20
        },
        "end": {
          "line": 138,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 5080,
      "end": 5090,
      "loc": {
        "start": {
          "line": 138,
          "column": 21
        },
        "end": {
          "line": 138,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5090,
      "end": 5091,
      "loc": {
        "start": {
          "line": 138,
          "column": 31
        },
        "end": {
          "line": 138,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 5091,
      "end": 5103,
      "loc": {
        "start": {
          "line": 138,
          "column": 32
        },
        "end": {
          "line": 138,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5103,
      "end": 5104,
      "loc": {
        "start": {
          "line": 138,
          "column": 44
        },
        "end": {
          "line": 138,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5104,
      "end": 5105,
      "loc": {
        "start": {
          "line": 138,
          "column": 45
        },
        "end": {
          "line": 138,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5105,
      "end": 5107,
      "loc": {
        "start": {
          "line": 138,
          "column": 46
        },
        "end": {
          "line": 138,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5107,
      "end": 5108,
      "loc": {
        "start": {
          "line": 138,
          "column": 48
        },
        "end": {
          "line": 138,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5108,
      "end": 5109,
      "loc": {
        "start": {
          "line": 138,
          "column": 49
        },
        "end": {
          "line": 138,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "update",
      "start": 5109,
      "end": 5115,
      "loc": {
        "start": {
          "line": 138,
          "column": 50
        },
        "end": {
          "line": 138,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5115,
      "end": 5116,
      "loc": {
        "start": {
          "line": 138,
          "column": 56
        },
        "end": {
          "line": 138,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5116,
      "end": 5117,
      "loc": {
        "start": {
          "line": 138,
          "column": 57
        },
        "end": {
          "line": 138,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5117,
      "end": 5118,
      "loc": {
        "start": {
          "line": 138,
          "column": 58
        },
        "end": {
          "line": 138,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5131,
      "end": 5132,
      "loc": {
        "start": {
          "line": 139,
          "column": 12
        },
        "end": {
          "line": 139,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5141,
      "end": 5142,
      "loc": {
        "start": {
          "line": 140,
          "column": 8
        },
        "end": {
          "line": 140,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5147,
      "end": 5148,
      "loc": {
        "start": {
          "line": 141,
          "column": 4
        },
        "end": {
          "line": 141,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onPause",
      "start": 5154,
      "end": 5161,
      "loc": {
        "start": {
          "line": 143,
          "column": 4
        },
        "end": {
          "line": 143,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5161,
      "end": 5162,
      "loc": {
        "start": {
          "line": 143,
          "column": 11
        },
        "end": {
          "line": 143,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5162,
      "end": 5163,
      "loc": {
        "start": {
          "line": 143,
          "column": 12
        },
        "end": {
          "line": 143,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5164,
      "end": 5165,
      "loc": {
        "start": {
          "line": 143,
          "column": 14
        },
        "end": {
          "line": 143,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 5174,
      "end": 5177,
      "loc": {
        "start": {
          "line": 144,
          "column": 8
        },
        "end": {
          "line": 144,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 5178,
      "end": 5187,
      "loc": {
        "start": {
          "line": 144,
          "column": 12
        },
        "end": {
          "line": 144,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5188,
      "end": 5189,
      "loc": {
        "start": {
          "line": 144,
          "column": 22
        },
        "end": {
          "line": 144,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 5190,
      "end": 5196,
      "loc": {
        "start": {
          "line": 144,
          "column": 24
        },
        "end": {
          "line": 144,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5196,
      "end": 5197,
      "loc": {
        "start": {
          "line": 144,
          "column": 30
        },
        "end": {
          "line": 144,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "keys",
      "start": 5197,
      "end": 5201,
      "loc": {
        "start": {
          "line": 144,
          "column": 31
        },
        "end": {
          "line": 144,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5201,
      "end": 5202,
      "loc": {
        "start": {
          "line": 144,
          "column": 35
        },
        "end": {
          "line": 144,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5202,
      "end": 5206,
      "loc": {
        "start": {
          "line": 144,
          "column": 36
        },
        "end": {
          "line": 144,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5206,
      "end": 5207,
      "loc": {
        "start": {
          "line": 144,
          "column": 40
        },
        "end": {
          "line": 144,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 5207,
      "end": 5217,
      "loc": {
        "start": {
          "line": 144,
          "column": 41
        },
        "end": {
          "line": 144,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5217,
      "end": 5218,
      "loc": {
        "start": {
          "line": 144,
          "column": 51
        },
        "end": {
          "line": 144,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5218,
      "end": 5219,
      "loc": {
        "start": {
          "line": 144,
          "column": 52
        },
        "end": {
          "line": 144,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 5228,
      "end": 5231,
      "loc": {
        "start": {
          "line": 145,
          "column": 8
        },
        "end": {
          "line": 145,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5232,
      "end": 5233,
      "loc": {
        "start": {
          "line": 145,
          "column": 12
        },
        "end": {
          "line": 145,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 5233,
      "end": 5236,
      "loc": {
        "start": {
          "line": 145,
          "column": 13
        },
        "end": {
          "line": 145,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 5237,
      "end": 5238,
      "loc": {
        "start": {
          "line": 145,
          "column": 17
        },
        "end": {
          "line": 145,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5239,
      "end": 5240,
      "loc": {
        "start": {
          "line": 145,
          "column": 19
        },
        "end": {
          "line": 145,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 5241,
      "end": 5242,
      "loc": {
        "start": {
          "line": 145,
          "column": 21
        },
        "end": {
          "line": 145,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5242,
      "end": 5243,
      "loc": {
        "start": {
          "line": 145,
          "column": 22
        },
        "end": {
          "line": 145,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 5244,
      "end": 5245,
      "loc": {
        "start": {
          "line": 145,
          "column": 24
        },
        "end": {
          "line": 145,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 5246,
      "end": 5247,
      "loc": {
        "start": {
          "line": 145,
          "column": 26
        },
        "end": {
          "line": 145,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 5248,
      "end": 5257,
      "loc": {
        "start": {
          "line": 145,
          "column": 28
        },
        "end": {
          "line": 145,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5257,
      "end": 5258,
      "loc": {
        "start": {
          "line": 145,
          "column": 37
        },
        "end": {
          "line": 145,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 5258,
      "end": 5264,
      "loc": {
        "start": {
          "line": 145,
          "column": 38
        },
        "end": {
          "line": 145,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5264,
      "end": 5265,
      "loc": {
        "start": {
          "line": 145,
          "column": 44
        },
        "end": {
          "line": 145,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 5266,
      "end": 5267,
      "loc": {
        "start": {
          "line": 145,
          "column": 46
        },
        "end": {
          "line": 145,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "++/--",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": true,
        "binop": null
      },
      "value": "++",
      "start": 5267,
      "end": 5269,
      "loc": {
        "start": {
          "line": 145,
          "column": 47
        },
        "end": {
          "line": 145,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5269,
      "end": 5270,
      "loc": {
        "start": {
          "line": 145,
          "column": 49
        },
        "end": {
          "line": 145,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5271,
      "end": 5272,
      "loc": {
        "start": {
          "line": 145,
          "column": 51
        },
        "end": {
          "line": 145,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 5285,
      "end": 5288,
      "loc": {
        "start": {
          "line": 146,
          "column": 12
        },
        "end": {
          "line": 146,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 5289,
      "end": 5301,
      "loc": {
        "start": {
          "line": 146,
          "column": 16
        },
        "end": {
          "line": 146,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5302,
      "end": 5303,
      "loc": {
        "start": {
          "line": 146,
          "column": 29
        },
        "end": {
          "line": 146,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 5304,
      "end": 5313,
      "loc": {
        "start": {
          "line": 146,
          "column": 31
        },
        "end": {
          "line": 146,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5313,
      "end": 5314,
      "loc": {
        "start": {
          "line": 146,
          "column": 40
        },
        "end": {
          "line": 146,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 5314,
      "end": 5315,
      "loc": {
        "start": {
          "line": 146,
          "column": 41
        },
        "end": {
          "line": 146,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5315,
      "end": 5316,
      "loc": {
        "start": {
          "line": 146,
          "column": 42
        },
        "end": {
          "line": 146,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5316,
      "end": 5317,
      "loc": {
        "start": {
          "line": 146,
          "column": 43
        },
        "end": {
          "line": 146,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 5330,
      "end": 5333,
      "loc": {
        "start": {
          "line": 147,
          "column": 12
        },
        "end": {
          "line": 147,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5334,
      "end": 5335,
      "loc": {
        "start": {
          "line": 147,
          "column": 16
        },
        "end": {
          "line": 147,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 5335,
      "end": 5338,
      "loc": {
        "start": {
          "line": 147,
          "column": 17
        },
        "end": {
          "line": 147,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5339,
      "end": 5341,
      "loc": {
        "start": {
          "line": 147,
          "column": 21
        },
        "end": {
          "line": 147,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5342,
      "end": 5343,
      "loc": {
        "start": {
          "line": 147,
          "column": 24
        },
        "end": {
          "line": 147,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 5344,
      "end": 5345,
      "loc": {
        "start": {
          "line": 147,
          "column": 26
        },
        "end": {
          "line": 147,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5345,
      "end": 5346,
      "loc": {
        "start": {
          "line": 147,
          "column": 27
        },
        "end": {
          "line": 147,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5347,
      "end": 5349,
      "loc": {
        "start": {
          "line": 147,
          "column": 29
        },
        "end": {
          "line": 147,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 5350,
      "end": 5351,
      "loc": {
        "start": {
          "line": 147,
          "column": 32
        },
        "end": {
          "line": 147,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5352,
      "end": 5356,
      "loc": {
        "start": {
          "line": 147,
          "column": 34
        },
        "end": {
          "line": 147,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5356,
      "end": 5357,
      "loc": {
        "start": {
          "line": 147,
          "column": 38
        },
        "end": {
          "line": 147,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 5357,
      "end": 5367,
      "loc": {
        "start": {
          "line": 147,
          "column": 39
        },
        "end": {
          "line": 147,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5367,
      "end": 5368,
      "loc": {
        "start": {
          "line": 147,
          "column": 49
        },
        "end": {
          "line": 147,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 5368,
      "end": 5380,
      "loc": {
        "start": {
          "line": 147,
          "column": 50
        },
        "end": {
          "line": 147,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5380,
      "end": 5381,
      "loc": {
        "start": {
          "line": 147,
          "column": 62
        },
        "end": {
          "line": 147,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5381,
      "end": 5382,
      "loc": {
        "start": {
          "line": 147,
          "column": 63
        },
        "end": {
          "line": 147,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 5382,
      "end": 5388,
      "loc": {
        "start": {
          "line": 147,
          "column": 64
        },
        "end": {
          "line": 147,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5388,
      "end": 5389,
      "loc": {
        "start": {
          "line": 147,
          "column": 70
        },
        "end": {
          "line": 147,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5390,
      "end": 5392,
      "loc": {
        "start": {
          "line": 147,
          "column": 72
        },
        "end": {
          "line": 147,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "++/--",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": true,
        "binop": null
      },
      "value": "++",
      "start": 5392,
      "end": 5394,
      "loc": {
        "start": {
          "line": 147,
          "column": 74
        },
        "end": {
          "line": 147,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5394,
      "end": 5395,
      "loc": {
        "start": {
          "line": 147,
          "column": 76
        },
        "end": {
          "line": 147,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5396,
      "end": 5397,
      "loc": {
        "start": {
          "line": 147,
          "column": 78
        },
        "end": {
          "line": 147,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5414,
      "end": 5418,
      "loc": {
        "start": {
          "line": 148,
          "column": 16
        },
        "end": {
          "line": 148,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5418,
      "end": 5419,
      "loc": {
        "start": {
          "line": 148,
          "column": 20
        },
        "end": {
          "line": 148,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 5419,
      "end": 5429,
      "loc": {
        "start": {
          "line": 148,
          "column": 21
        },
        "end": {
          "line": 148,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5429,
      "end": 5430,
      "loc": {
        "start": {
          "line": 148,
          "column": 31
        },
        "end": {
          "line": 148,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 5430,
      "end": 5442,
      "loc": {
        "start": {
          "line": 148,
          "column": 32
        },
        "end": {
          "line": 148,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5442,
      "end": 5443,
      "loc": {
        "start": {
          "line": 148,
          "column": 44
        },
        "end": {
          "line": 148,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5443,
      "end": 5444,
      "loc": {
        "start": {
          "line": 148,
          "column": 45
        },
        "end": {
          "line": 148,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5444,
      "end": 5446,
      "loc": {
        "start": {
          "line": 148,
          "column": 46
        },
        "end": {
          "line": 148,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5446,
      "end": 5447,
      "loc": {
        "start": {
          "line": 148,
          "column": 48
        },
        "end": {
          "line": 148,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5447,
      "end": 5448,
      "loc": {
        "start": {
          "line": 148,
          "column": 49
        },
        "end": {
          "line": 148,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "pause",
      "start": 5448,
      "end": 5453,
      "loc": {
        "start": {
          "line": 148,
          "column": 50
        },
        "end": {
          "line": 148,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5453,
      "end": 5454,
      "loc": {
        "start": {
          "line": 148,
          "column": 55
        },
        "end": {
          "line": 148,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5454,
      "end": 5455,
      "loc": {
        "start": {
          "line": 148,
          "column": 56
        },
        "end": {
          "line": 148,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5455,
      "end": 5456,
      "loc": {
        "start": {
          "line": 148,
          "column": 57
        },
        "end": {
          "line": 148,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5469,
      "end": 5470,
      "loc": {
        "start": {
          "line": 149,
          "column": 12
        },
        "end": {
          "line": 149,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5479,
      "end": 5480,
      "loc": {
        "start": {
          "line": 150,
          "column": 8
        },
        "end": {
          "line": 150,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5485,
      "end": 5486,
      "loc": {
        "start": {
          "line": 151,
          "column": 4
        },
        "end": {
          "line": 151,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUnpause",
      "start": 5492,
      "end": 5501,
      "loc": {
        "start": {
          "line": 153,
          "column": 4
        },
        "end": {
          "line": 153,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5501,
      "end": 5502,
      "loc": {
        "start": {
          "line": 153,
          "column": 13
        },
        "end": {
          "line": 153,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5502,
      "end": 5503,
      "loc": {
        "start": {
          "line": 153,
          "column": 14
        },
        "end": {
          "line": 153,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5504,
      "end": 5505,
      "loc": {
        "start": {
          "line": 153,
          "column": 16
        },
        "end": {
          "line": 153,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 5514,
      "end": 5517,
      "loc": {
        "start": {
          "line": 154,
          "column": 8
        },
        "end": {
          "line": 154,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 5518,
      "end": 5527,
      "loc": {
        "start": {
          "line": 154,
          "column": 12
        },
        "end": {
          "line": 154,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5528,
      "end": 5529,
      "loc": {
        "start": {
          "line": 154,
          "column": 22
        },
        "end": {
          "line": 154,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 5530,
      "end": 5536,
      "loc": {
        "start": {
          "line": 154,
          "column": 24
        },
        "end": {
          "line": 154,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5536,
      "end": 5537,
      "loc": {
        "start": {
          "line": 154,
          "column": 30
        },
        "end": {
          "line": 154,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "keys",
      "start": 5537,
      "end": 5541,
      "loc": {
        "start": {
          "line": 154,
          "column": 31
        },
        "end": {
          "line": 154,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5541,
      "end": 5542,
      "loc": {
        "start": {
          "line": 154,
          "column": 35
        },
        "end": {
          "line": 154,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5542,
      "end": 5546,
      "loc": {
        "start": {
          "line": 154,
          "column": 36
        },
        "end": {
          "line": 154,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5546,
      "end": 5547,
      "loc": {
        "start": {
          "line": 154,
          "column": 40
        },
        "end": {
          "line": 154,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 5547,
      "end": 5557,
      "loc": {
        "start": {
          "line": 154,
          "column": 41
        },
        "end": {
          "line": 154,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5557,
      "end": 5558,
      "loc": {
        "start": {
          "line": 154,
          "column": 51
        },
        "end": {
          "line": 154,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5558,
      "end": 5559,
      "loc": {
        "start": {
          "line": 154,
          "column": 52
        },
        "end": {
          "line": 154,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 5568,
      "end": 5571,
      "loc": {
        "start": {
          "line": 155,
          "column": 8
        },
        "end": {
          "line": 155,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5572,
      "end": 5573,
      "loc": {
        "start": {
          "line": 155,
          "column": 12
        },
        "end": {
          "line": 155,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 5573,
      "end": 5576,
      "loc": {
        "start": {
          "line": 155,
          "column": 13
        },
        "end": {
          "line": 155,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 5577,
      "end": 5578,
      "loc": {
        "start": {
          "line": 155,
          "column": 17
        },
        "end": {
          "line": 155,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5579,
      "end": 5580,
      "loc": {
        "start": {
          "line": 155,
          "column": 19
        },
        "end": {
          "line": 155,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 5581,
      "end": 5582,
      "loc": {
        "start": {
          "line": 155,
          "column": 21
        },
        "end": {
          "line": 155,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5582,
      "end": 5583,
      "loc": {
        "start": {
          "line": 155,
          "column": 22
        },
        "end": {
          "line": 155,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 5584,
      "end": 5585,
      "loc": {
        "start": {
          "line": 155,
          "column": 24
        },
        "end": {
          "line": 155,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 5586,
      "end": 5587,
      "loc": {
        "start": {
          "line": 155,
          "column": 26
        },
        "end": {
          "line": 155,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 5588,
      "end": 5597,
      "loc": {
        "start": {
          "line": 155,
          "column": 28
        },
        "end": {
          "line": 155,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5597,
      "end": 5598,
      "loc": {
        "start": {
          "line": 155,
          "column": 37
        },
        "end": {
          "line": 155,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 5598,
      "end": 5604,
      "loc": {
        "start": {
          "line": 155,
          "column": 38
        },
        "end": {
          "line": 155,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5604,
      "end": 5605,
      "loc": {
        "start": {
          "line": 155,
          "column": 44
        },
        "end": {
          "line": 155,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 5606,
      "end": 5607,
      "loc": {
        "start": {
          "line": 155,
          "column": 46
        },
        "end": {
          "line": 155,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "++/--",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": true,
        "binop": null
      },
      "value": "++",
      "start": 5607,
      "end": 5609,
      "loc": {
        "start": {
          "line": 155,
          "column": 47
        },
        "end": {
          "line": 155,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5609,
      "end": 5610,
      "loc": {
        "start": {
          "line": 155,
          "column": 49
        },
        "end": {
          "line": 155,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5611,
      "end": 5612,
      "loc": {
        "start": {
          "line": 155,
          "column": 51
        },
        "end": {
          "line": 155,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 5625,
      "end": 5628,
      "loc": {
        "start": {
          "line": 156,
          "column": 12
        },
        "end": {
          "line": 156,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 5629,
      "end": 5641,
      "loc": {
        "start": {
          "line": 156,
          "column": 16
        },
        "end": {
          "line": 156,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5642,
      "end": 5643,
      "loc": {
        "start": {
          "line": 156,
          "column": 29
        },
        "end": {
          "line": 156,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "compTypes",
      "start": 5644,
      "end": 5653,
      "loc": {
        "start": {
          "line": 156,
          "column": 31
        },
        "end": {
          "line": 156,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5653,
      "end": 5654,
      "loc": {
        "start": {
          "line": 156,
          "column": 40
        },
        "end": {
          "line": 156,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "i",
      "start": 5654,
      "end": 5655,
      "loc": {
        "start": {
          "line": 156,
          "column": 41
        },
        "end": {
          "line": 156,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5655,
      "end": 5656,
      "loc": {
        "start": {
          "line": 156,
          "column": 42
        },
        "end": {
          "line": 156,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5656,
      "end": 5657,
      "loc": {
        "start": {
          "line": 156,
          "column": 43
        },
        "end": {
          "line": 156,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 5670,
      "end": 5673,
      "loc": {
        "start": {
          "line": 157,
          "column": 12
        },
        "end": {
          "line": 157,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5674,
      "end": 5675,
      "loc": {
        "start": {
          "line": 157,
          "column": 16
        },
        "end": {
          "line": 157,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 5675,
      "end": 5678,
      "loc": {
        "start": {
          "line": 157,
          "column": 17
        },
        "end": {
          "line": 157,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5679,
      "end": 5681,
      "loc": {
        "start": {
          "line": 157,
          "column": 21
        },
        "end": {
          "line": 157,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5682,
      "end": 5683,
      "loc": {
        "start": {
          "line": 157,
          "column": 24
        },
        "end": {
          "line": 157,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 5684,
      "end": 5685,
      "loc": {
        "start": {
          "line": 157,
          "column": 26
        },
        "end": {
          "line": 157,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5685,
      "end": 5686,
      "loc": {
        "start": {
          "line": 157,
          "column": 27
        },
        "end": {
          "line": 157,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5687,
      "end": 5689,
      "loc": {
        "start": {
          "line": 157,
          "column": 29
        },
        "end": {
          "line": 157,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 5690,
      "end": 5691,
      "loc": {
        "start": {
          "line": 157,
          "column": 32
        },
        "end": {
          "line": 157,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5692,
      "end": 5696,
      "loc": {
        "start": {
          "line": 157,
          "column": 34
        },
        "end": {
          "line": 157,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5696,
      "end": 5697,
      "loc": {
        "start": {
          "line": 157,
          "column": 38
        },
        "end": {
          "line": 157,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 5697,
      "end": 5707,
      "loc": {
        "start": {
          "line": 157,
          "column": 39
        },
        "end": {
          "line": 157,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5707,
      "end": 5708,
      "loc": {
        "start": {
          "line": 157,
          "column": 49
        },
        "end": {
          "line": 157,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 5708,
      "end": 5720,
      "loc": {
        "start": {
          "line": 157,
          "column": 50
        },
        "end": {
          "line": 157,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5720,
      "end": 5721,
      "loc": {
        "start": {
          "line": 157,
          "column": 62
        },
        "end": {
          "line": 157,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5721,
      "end": 5722,
      "loc": {
        "start": {
          "line": 157,
          "column": 63
        },
        "end": {
          "line": 157,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 5722,
      "end": 5728,
      "loc": {
        "start": {
          "line": 157,
          "column": 64
        },
        "end": {
          "line": 157,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5728,
      "end": 5729,
      "loc": {
        "start": {
          "line": 157,
          "column": 70
        },
        "end": {
          "line": 157,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5730,
      "end": 5732,
      "loc": {
        "start": {
          "line": 157,
          "column": 72
        },
        "end": {
          "line": 157,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "++/--",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": true,
        "binop": null
      },
      "value": "++",
      "start": 5732,
      "end": 5734,
      "loc": {
        "start": {
          "line": 157,
          "column": 74
        },
        "end": {
          "line": 157,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5734,
      "end": 5735,
      "loc": {
        "start": {
          "line": 157,
          "column": 76
        },
        "end": {
          "line": 157,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5736,
      "end": 5737,
      "loc": {
        "start": {
          "line": 157,
          "column": 78
        },
        "end": {
          "line": 157,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5754,
      "end": 5758,
      "loc": {
        "start": {
          "line": 158,
          "column": 16
        },
        "end": {
          "line": 158,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5758,
      "end": 5759,
      "loc": {
        "start": {
          "line": 158,
          "column": 20
        },
        "end": {
          "line": 158,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "components",
      "start": 5759,
      "end": 5769,
      "loc": {
        "start": {
          "line": 158,
          "column": 21
        },
        "end": {
          "line": 158,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5769,
      "end": 5770,
      "loc": {
        "start": {
          "line": 158,
          "column": 31
        },
        "end": {
          "line": 158,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "thisCompType",
      "start": 5770,
      "end": 5782,
      "loc": {
        "start": {
          "line": 158,
          "column": 32
        },
        "end": {
          "line": 158,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5782,
      "end": 5783,
      "loc": {
        "start": {
          "line": 158,
          "column": 44
        },
        "end": {
          "line": 158,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5783,
      "end": 5784,
      "loc": {
        "start": {
          "line": 158,
          "column": 45
        },
        "end": {
          "line": 158,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ii",
      "start": 5784,
      "end": 5786,
      "loc": {
        "start": {
          "line": 158,
          "column": 46
        },
        "end": {
          "line": 158,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5786,
      "end": 5787,
      "loc": {
        "start": {
          "line": 158,
          "column": 48
        },
        "end": {
          "line": 158,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5787,
      "end": 5788,
      "loc": {
        "start": {
          "line": 158,
          "column": 49
        },
        "end": {
          "line": 158,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unpause",
      "start": 5788,
      "end": 5795,
      "loc": {
        "start": {
          "line": 158,
          "column": 50
        },
        "end": {
          "line": 158,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5795,
      "end": 5796,
      "loc": {
        "start": {
          "line": 158,
          "column": 57
        },
        "end": {
          "line": 158,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5796,
      "end": 5797,
      "loc": {
        "start": {
          "line": 158,
          "column": 58
        },
        "end": {
          "line": 158,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5797,
      "end": 5798,
      "loc": {
        "start": {
          "line": 158,
          "column": 59
        },
        "end": {
          "line": 158,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5811,
      "end": 5812,
      "loc": {
        "start": {
          "line": 159,
          "column": 12
        },
        "end": {
          "line": 159,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5821,
      "end": 5822,
      "loc": {
        "start": {
          "line": 160,
          "column": 8
        },
        "end": {
          "line": 160,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5827,
      "end": 5828,
      "loc": {
        "start": {
          "line": 161,
          "column": 4
        },
        "end": {
          "line": 161,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Rewritten update() functions which is originally defined in Updateable.\n     * The GameObject adds a pre and post update function, and respective overrideable callbacks\n     * (onPreUpdate and onPostUpdate).\n     ",
      "start": 5838,
      "end": 6064,
      "loc": {
        "start": {
          "line": 163,
          "column": 4
        },
        "end": {
          "line": 167,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "update",
      "start": 6069,
      "end": 6075,
      "loc": {
        "start": {
          "line": 168,
          "column": 4
        },
        "end": {
          "line": 168,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6075,
      "end": 6076,
      "loc": {
        "start": {
          "line": 168,
          "column": 10
        },
        "end": {
          "line": 168,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6076,
      "end": 6077,
      "loc": {
        "start": {
          "line": 168,
          "column": 11
        },
        "end": {
          "line": 168,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6078,
      "end": 6079,
      "loc": {
        "start": {
          "line": 168,
          "column": 13
        },
        "end": {
          "line": 168,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 6088,
      "end": 6090,
      "loc": {
        "start": {
          "line": 169,
          "column": 8
        },
        "end": {
          "line": 169,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6091,
      "end": 6092,
      "loc": {
        "start": {
          "line": 169,
          "column": 11
        },
        "end": {
          "line": 169,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6092,
      "end": 6096,
      "loc": {
        "start": {
          "line": 169,
          "column": 12
        },
        "end": {
          "line": 169,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6096,
      "end": 6097,
      "loc": {
        "start": {
          "line": 169,
          "column": 16
        },
        "end": {
          "line": 169,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hasPaused",
      "start": 6097,
      "end": 6106,
      "loc": {
        "start": {
          "line": 169,
          "column": 17
        },
        "end": {
          "line": 169,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6106,
      "end": 6107,
      "loc": {
        "start": {
          "line": 169,
          "column": 26
        },
        "end": {
          "line": 169,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 6120,
      "end": 6126,
      "loc": {
        "start": {
          "line": 170,
          "column": 12
        },
        "end": {
          "line": 170,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6126,
      "end": 6127,
      "loc": {
        "start": {
          "line": 170,
          "column": 18
        },
        "end": {
          "line": 170,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 6145,
      "end": 6147,
      "loc": {
        "start": {
          "line": 172,
          "column": 8
        },
        "end": {
          "line": 172,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6148,
      "end": 6149,
      "loc": {
        "start": {
          "line": 172,
          "column": 11
        },
        "end": {
          "line": 172,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 6149,
      "end": 6150,
      "loc": {
        "start": {
          "line": 172,
          "column": 12
        },
        "end": {
          "line": 172,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6150,
      "end": 6154,
      "loc": {
        "start": {
          "line": 172,
          "column": 13
        },
        "end": {
          "line": 172,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6154,
      "end": 6155,
      "loc": {
        "start": {
          "line": 172,
          "column": 17
        },
        "end": {
          "line": 172,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hasStarted",
      "start": 6155,
      "end": 6165,
      "loc": {
        "start": {
          "line": 172,
          "column": 18
        },
        "end": {
          "line": 172,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6165,
      "end": 6166,
      "loc": {
        "start": {
          "line": 172,
          "column": 28
        },
        "end": {
          "line": 172,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6167,
      "end": 6168,
      "loc": {
        "start": {
          "line": 172,
          "column": 30
        },
        "end": {
          "line": 172,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6181,
      "end": 6185,
      "loc": {
        "start": {
          "line": 173,
          "column": 12
        },
        "end": {
          "line": 173,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6185,
      "end": 6186,
      "loc": {
        "start": {
          "line": 173,
          "column": 16
        },
        "end": {
          "line": 173,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "start",
      "start": 6186,
      "end": 6191,
      "loc": {
        "start": {
          "line": 173,
          "column": 17
        },
        "end": {
          "line": 173,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6191,
      "end": 6192,
      "loc": {
        "start": {
          "line": 173,
          "column": 22
        },
        "end": {
          "line": 173,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6192,
      "end": 6193,
      "loc": {
        "start": {
          "line": 173,
          "column": 23
        },
        "end": {
          "line": 173,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6193,
      "end": 6194,
      "loc": {
        "start": {
          "line": 173,
          "column": 24
        },
        "end": {
          "line": 173,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 6207,
      "end": 6213,
      "loc": {
        "start": {
          "line": 174,
          "column": 12
        },
        "end": {
          "line": 174,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6213,
      "end": 6214,
      "loc": {
        "start": {
          "line": 174,
          "column": 18
        },
        "end": {
          "line": 174,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6223,
      "end": 6224,
      "loc": {
        "start": {
          "line": 175,
          "column": 8
        },
        "end": {
          "line": 175,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6242,
      "end": 6246,
      "loc": {
        "start": {
          "line": 177,
          "column": 8
        },
        "end": {
          "line": 177,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6246,
      "end": 6247,
      "loc": {
        "start": {
          "line": 177,
          "column": 12
        },
        "end": {
          "line": 177,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "preUpdate",
      "start": 6247,
      "end": 6256,
      "loc": {
        "start": {
          "line": 177,
          "column": 13
        },
        "end": {
          "line": 177,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6256,
      "end": 6257,
      "loc": {
        "start": {
          "line": 177,
          "column": 22
        },
        "end": {
          "line": 177,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6257,
      "end": 6258,
      "loc": {
        "start": {
          "line": 177,
          "column": 23
        },
        "end": {
          "line": 177,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6258,
      "end": 6259,
      "loc": {
        "start": {
          "line": 177,
          "column": 24
        },
        "end": {
          "line": 177,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6268,
      "end": 6272,
      "loc": {
        "start": {
          "line": 178,
          "column": 8
        },
        "end": {
          "line": 178,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6272,
      "end": 6273,
      "loc": {
        "start": {
          "line": 178,
          "column": 12
        },
        "end": {
          "line": 178,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUpdate",
      "start": 6273,
      "end": 6281,
      "loc": {
        "start": {
          "line": 178,
          "column": 13
        },
        "end": {
          "line": 178,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6281,
      "end": 6282,
      "loc": {
        "start": {
          "line": 178,
          "column": 21
        },
        "end": {
          "line": 178,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6282,
      "end": 6283,
      "loc": {
        "start": {
          "line": 178,
          "column": 22
        },
        "end": {
          "line": 178,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6283,
      "end": 6284,
      "loc": {
        "start": {
          "line": 178,
          "column": 23
        },
        "end": {
          "line": 178,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6293,
      "end": 6297,
      "loc": {
        "start": {
          "line": 179,
          "column": 8
        },
        "end": {
          "line": 179,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6297,
      "end": 6298,
      "loc": {
        "start": {
          "line": 179,
          "column": 12
        },
        "end": {
          "line": 179,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateComponents",
      "start": 6298,
      "end": 6314,
      "loc": {
        "start": {
          "line": 179,
          "column": 13
        },
        "end": {
          "line": 179,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6314,
      "end": 6315,
      "loc": {
        "start": {
          "line": 179,
          "column": 29
        },
        "end": {
          "line": 179,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6315,
      "end": 6316,
      "loc": {
        "start": {
          "line": 179,
          "column": 30
        },
        "end": {
          "line": 179,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6316,
      "end": 6317,
      "loc": {
        "start": {
          "line": 179,
          "column": 31
        },
        "end": {
          "line": 179,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6326,
      "end": 6330,
      "loc": {
        "start": {
          "line": 180,
          "column": 8
        },
        "end": {
          "line": 180,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6330,
      "end": 6331,
      "loc": {
        "start": {
          "line": 180,
          "column": 12
        },
        "end": {
          "line": 180,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "postUpdate",
      "start": 6331,
      "end": 6341,
      "loc": {
        "start": {
          "line": 180,
          "column": 13
        },
        "end": {
          "line": 180,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6341,
      "end": 6342,
      "loc": {
        "start": {
          "line": 180,
          "column": 23
        },
        "end": {
          "line": 180,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6342,
      "end": 6343,
      "loc": {
        "start": {
          "line": 180,
          "column": 24
        },
        "end": {
          "line": 180,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6343,
      "end": 6344,
      "loc": {
        "start": {
          "line": 180,
          "column": 25
        },
        "end": {
          "line": 180,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6349,
      "end": 6350,
      "loc": {
        "start": {
          "line": 181,
          "column": 4
        },
        "end": {
          "line": 181,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Called by the GameObject before an update to do default calls for preUpdating. Afterwards it\n     * calls the overrideable function, onPreUpdate.\n     ",
      "start": 6356,
      "end": 6520,
      "loc": {
        "start": {
          "line": 183,
          "column": 4
        },
        "end": {
          "line": 186,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "preUpdate",
      "start": 6525,
      "end": 6534,
      "loc": {
        "start": {
          "line": 187,
          "column": 4
        },
        "end": {
          "line": 187,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6534,
      "end": 6535,
      "loc": {
        "start": {
          "line": 187,
          "column": 13
        },
        "end": {
          "line": 187,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6535,
      "end": 6536,
      "loc": {
        "start": {
          "line": 187,
          "column": 14
        },
        "end": {
          "line": 187,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6537,
      "end": 6538,
      "loc": {
        "start": {
          "line": 187,
          "column": 16
        },
        "end": {
          "line": 187,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6547,
      "end": 6551,
      "loc": {
        "start": {
          "line": 188,
          "column": 8
        },
        "end": {
          "line": 188,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6551,
      "end": 6552,
      "loc": {
        "start": {
          "line": 188,
          "column": 12
        },
        "end": {
          "line": 188,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onPreUpdate",
      "start": 6552,
      "end": 6563,
      "loc": {
        "start": {
          "line": 188,
          "column": 13
        },
        "end": {
          "line": 188,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6563,
      "end": 6564,
      "loc": {
        "start": {
          "line": 188,
          "column": 24
        },
        "end": {
          "line": 188,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6564,
      "end": 6565,
      "loc": {
        "start": {
          "line": 188,
          "column": 25
        },
        "end": {
          "line": 188,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6565,
      "end": 6566,
      "loc": {
        "start": {
          "line": 188,
          "column": 26
        },
        "end": {
          "line": 188,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6571,
      "end": 6572,
      "loc": {
        "start": {
          "line": 189,
          "column": 4
        },
        "end": {
          "line": 189,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Called by the GameObject after an update to do default calls for postUpdating. Afterwards it\n     * calls the overrideable function, onPostUpdate.\n     ",
      "start": 6578,
      "end": 6743,
      "loc": {
        "start": {
          "line": 191,
          "column": 4
        },
        "end": {
          "line": 194,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "postUpdate",
      "start": 6748,
      "end": 6758,
      "loc": {
        "start": {
          "line": 195,
          "column": 4
        },
        "end": {
          "line": 195,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6758,
      "end": 6759,
      "loc": {
        "start": {
          "line": 195,
          "column": 14
        },
        "end": {
          "line": 195,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6759,
      "end": 6760,
      "loc": {
        "start": {
          "line": 195,
          "column": 15
        },
        "end": {
          "line": 195,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6761,
      "end": 6762,
      "loc": {
        "start": {
          "line": 195,
          "column": 17
        },
        "end": {
          "line": 195,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6771,
      "end": 6775,
      "loc": {
        "start": {
          "line": 196,
          "column": 8
        },
        "end": {
          "line": 196,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6775,
      "end": 6776,
      "loc": {
        "start": {
          "line": 196,
          "column": 12
        },
        "end": {
          "line": 196,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onPostUpdate",
      "start": 6776,
      "end": 6788,
      "loc": {
        "start": {
          "line": 196,
          "column": 13
        },
        "end": {
          "line": 196,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6788,
      "end": 6789,
      "loc": {
        "start": {
          "line": 196,
          "column": 25
        },
        "end": {
          "line": 196,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6789,
      "end": 6790,
      "loc": {
        "start": {
          "line": 196,
          "column": 26
        },
        "end": {
          "line": 196,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6790,
      "end": 6791,
      "loc": {
        "start": {
          "line": 196,
          "column": 27
        },
        "end": {
          "line": 196,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6796,
      "end": 6797,
      "loc": {
        "start": {
          "line": 197,
          "column": 4
        },
        "end": {
          "line": 197,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Override for Pre Update functionality.\n     ",
      "start": 6803,
      "end": 6860,
      "loc": {
        "start": {
          "line": 199,
          "column": 4
        },
        "end": {
          "line": 201,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onPreUpdate",
      "start": 6865,
      "end": 6876,
      "loc": {
        "start": {
          "line": 202,
          "column": 4
        },
        "end": {
          "line": 202,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6876,
      "end": 6877,
      "loc": {
        "start": {
          "line": 202,
          "column": 15
        },
        "end": {
          "line": 202,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6877,
      "end": 6878,
      "loc": {
        "start": {
          "line": 202,
          "column": 16
        },
        "end": {
          "line": 202,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6879,
      "end": 6880,
      "loc": {
        "start": {
          "line": 202,
          "column": 18
        },
        "end": {
          "line": 202,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6880,
      "end": 6881,
      "loc": {
        "start": {
          "line": 202,
          "column": 19
        },
        "end": {
          "line": 202,
          "column": 20
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Override for Post Update functionality.\n     ",
      "start": 6887,
      "end": 6945,
      "loc": {
        "start": {
          "line": 204,
          "column": 4
        },
        "end": {
          "line": 206,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onPostUpdate",
      "start": 6950,
      "end": 6962,
      "loc": {
        "start": {
          "line": 207,
          "column": 4
        },
        "end": {
          "line": 207,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6962,
      "end": 6963,
      "loc": {
        "start": {
          "line": 207,
          "column": 16
        },
        "end": {
          "line": 207,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6963,
      "end": 6964,
      "loc": {
        "start": {
          "line": 207,
          "column": 17
        },
        "end": {
          "line": 207,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6965,
      "end": 6966,
      "loc": {
        "start": {
          "line": 207,
          "column": 19
        },
        "end": {
          "line": 207,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6966,
      "end": 6967,
      "loc": {
        "start": {
          "line": 207,
          "column": 20
        },
        "end": {
          "line": 207,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6968,
      "end": 6969,
      "loc": {
        "start": {
          "line": 208,
          "column": 0
        },
        "end": {
          "line": 208,
          "column": 1
        }
      }
    },
    {
      "type": {
        "label": "eof",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6969,
      "end": 6969,
      "loc": {
        "start": {
          "line": 208,
          "column": 1
        },
        "end": {
          "line": 208,
          "column": 1
        }
      }
    }
  ]
}