{
  "type": "Program",
  "start": 0,
  "end": 15551,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 502,
      "column": 0
    }
  },
  "sourceType": "module",
  "body": [
    {
      "type": "ImportDeclaration",
      "start": 0,
      "end": 26,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 26
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 7,
          "end": 12,
          "loc": {
            "start": {
              "line": 1,
              "column": 7
            },
            "end": {
              "line": 1,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 7,
            "end": 12,
            "loc": {
              "start": {
                "line": 1,
                "column": 7
              },
              "end": {
                "line": 1,
                "column": 12
              }
            },
            "name": "THREE"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 18,
        "end": 25,
        "loc": {
          "start": {
            "line": 1,
            "column": 18
          },
          "end": {
            "line": 1,
            "column": 25
          }
        },
        "value": "three",
        "rawValue": "three",
        "raw": "'three'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 27,
      "end": 66,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 39
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 34,
          "end": 39,
          "loc": {
            "start": {
              "line": 2,
              "column": 7
            },
            "end": {
              "line": 2,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 34,
            "end": 39,
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 12
              }
            },
            "name": "Tween"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 45,
        "end": 65,
        "loc": {
          "start": {
            "line": 2,
            "column": 18
          },
          "end": {
            "line": 2,
            "column": 38
          }
        },
        "value": "../animation/tween",
        "rawValue": "../animation/tween",
        "raw": "'../animation/tween'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 67,
      "end": 103,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 36
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 74,
          "end": 80,
          "loc": {
            "start": {
              "line": 3,
              "column": 7
            },
            "end": {
              "line": 3,
              "column": 13
            }
          },
          "local": {
            "type": "Identifier",
            "start": 74,
            "end": 80,
            "loc": {
              "start": {
                "line": 3,
                "column": 7
              },
              "end": {
                "line": 3,
                "column": 13
              }
            },
            "name": "Events"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 86,
        "end": 102,
        "loc": {
          "start": {
            "line": 3,
            "column": 19
          },
          "end": {
            "line": 3,
            "column": 35
          }
        },
        "value": "../core/events",
        "rawValue": "../core/events",
        "raw": "'../core/events'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 104,
      "end": 147,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 43
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 111,
          "end": 120,
          "loc": {
            "start": {
              "line": 4,
              "column": 7
            },
            "end": {
              "line": 4,
              "column": 16
            }
          },
          "local": {
            "type": "Identifier",
            "start": 111,
            "end": 120,
            "loc": {
              "start": {
                "line": 4,
                "column": 7
              },
              "end": {
                "line": 4,
                "column": 16
              }
            },
            "name": "Raycaster"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 126,
        "end": 146,
        "loc": {
          "start": {
            "line": 4,
            "column": 22
          },
          "end": {
            "line": 4,
            "column": 42
          }
        },
        "value": "../three/raycaster",
        "rawValue": "../three/raycaster",
        "raw": "'../three/raycaster'"
      }
    },
    {
      "type": "ExportDefaultDeclaration",
      "start": 149,
      "end": 359,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 12,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 164,
        "end": 359,
        "loc": {
          "start": {
            "line": 6,
            "column": 15
          },
          "end": {
            "line": 12,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 170,
          "end": 177,
          "loc": {
            "start": {
              "line": 6,
              "column": 21
            },
            "end": {
              "line": 6,
              "column": 28
            }
          },
          "name": "Object3"
        },
        "superClass": {
          "type": "MemberExpression",
          "start": 186,
          "end": 200,
          "loc": {
            "start": {
              "line": 6,
              "column": 37
            },
            "end": {
              "line": 6,
              "column": 51
            }
          },
          "object": {
            "type": "Identifier",
            "start": 186,
            "end": 191,
            "loc": {
              "start": {
                "line": 6,
                "column": 37
              },
              "end": {
                "line": 6,
                "column": 42
              }
            },
            "name": "THREE"
          },
          "property": {
            "type": "Identifier",
            "start": 192,
            "end": 200,
            "loc": {
              "start": {
                "line": 6,
                "column": 43
              },
              "end": {
                "line": 6,
                "column": 51
              }
            },
            "name": "Object3D"
          },
          "computed": false
        },
        "body": {
          "type": "ClassBody",
          "start": 201,
          "end": 359,
          "loc": {
            "start": {
              "line": 6,
              "column": 52
            },
            "end": {
              "line": 12,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 204,
              "end": 357,
              "loc": {
                "start": {
                  "line": 7,
                  "column": 1
                },
                "end": {
                  "line": 11,
                  "column": 2
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 204,
                "end": 215,
                "loc": {
                  "start": {
                    "line": 7,
                    "column": 1
                  },
                  "end": {
                    "line": 7,
                    "column": 12
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 215,
                "end": 357,
                "loc": {
                  "start": {
                    "line": 7,
                    "column": 12
                  },
                  "end": {
                    "line": 11,
                    "column": 2
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "AssignmentPattern",
                    "start": 216,
                    "end": 235,
                    "loc": {
                      "start": {
                        "line": 7,
                        "column": 13
                      },
                      "end": {
                        "line": 7,
                        "column": 32
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 216,
                      "end": 223,
                      "loc": {
                        "start": {
                          "line": 7,
                          "column": 13
                        },
                        "end": {
                          "line": 7,
                          "column": 20
                        }
                      },
                      "name": "objects"
                    },
                    "right": {
                      "type": "Identifier",
                      "start": 226,
                      "end": 235,
                      "loc": {
                        "start": {
                          "line": 7,
                          "column": 23
                        },
                        "end": {
                          "line": 7,
                          "column": 32
                        }
                      },
                      "name": "undefined"
                    }
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 237,
                    "end": 256,
                    "loc": {
                      "start": {
                        "line": 7,
                        "column": 34
                      },
                      "end": {
                        "line": 7,
                        "column": 53
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 237,
                      "end": 244,
                      "loc": {
                        "start": {
                          "line": 7,
                          "column": 34
                        },
                        "end": {
                          "line": 7,
                          "column": 41
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "Identifier",
                      "start": 247,
                      "end": 256,
                      "loc": {
                        "start": {
                          "line": 7,
                          "column": 44
                        },
                        "end": {
                          "line": 7,
                          "column": 53
                        }
                      },
                      "name": "undefined"
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 258,
                  "end": 357,
                  "loc": {
                    "start": {
                      "line": 7,
                      "column": 55
                    },
                    "end": {
                      "line": 11,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 262,
                      "end": 270,
                      "loc": {
                        "start": {
                          "line": 8,
                          "column": 2
                        },
                        "end": {
                          "line": 8,
                          "column": 10
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 262,
                        "end": 269,
                        "loc": {
                          "start": {
                            "line": 8,
                            "column": 2
                          },
                          "end": {
                            "line": 8,
                            "column": 9
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 262,
                          "end": 267,
                          "loc": {
                            "start": {
                              "line": 8,
                              "column": 2
                            },
                            "end": {
                              "line": 8,
                              "column": 7
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 279,
                      "end": 318,
                      "loc": {
                        "start": {
                          "line": 9,
                          "column": 8
                        },
                        "end": {
                          "line": 9,
                          "column": 47
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 283,
                        "end": 292,
                        "loc": {
                          "start": {
                            "line": 9,
                            "column": 12
                          },
                          "end": {
                            "line": 9,
                            "column": 21
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 284,
                          "end": 292,
                          "loc": {
                            "start": {
                              "line": 9,
                              "column": 13
                            },
                            "end": {
                              "line": 9,
                              "column": 21
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "Identifier",
                            "start": 285,
                            "end": 292,
                            "loc": {
                              "start": {
                                "line": 9,
                                "column": 14
                              },
                              "end": {
                                "line": 9,
                                "column": 21
                              }
                            },
                            "name": "options"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 294,
                        "end": 318,
                        "loc": {
                          "start": {
                            "line": 9,
                            "column": 23
                          },
                          "end": {
                            "line": 9,
                            "column": 47
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 294,
                          "end": 317,
                          "loc": {
                            "start": {
                              "line": 9,
                              "column": 23
                            },
                            "end": {
                              "line": 9,
                              "column": 46
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 294,
                            "end": 308,
                            "loc": {
                              "start": {
                                "line": 9,
                                "column": 23
                              },
                              "end": {
                                "line": 9,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 294,
                              "end": 298,
                              "loc": {
                                "start": {
                                  "line": 9,
                                  "column": 23
                                },
                                "end": {
                                  "line": 9,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 299,
                              "end": 308,
                              "loc": {
                                "start": {
                                  "line": 9,
                                  "column": 28
                                },
                                "end": {
                                  "line": 9,
                                  "column": 37
                                }
                              },
                              "name": "setValues"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 309,
                              "end": 316,
                              "loc": {
                                "start": {
                                  "line": 9,
                                  "column": 38
                                },
                                "end": {
                                  "line": 9,
                                  "column": 45
                                }
                              },
                              "name": "options"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 321,
                      "end": 354,
                      "loc": {
                        "start": {
                          "line": 10,
                          "column": 2
                        },
                        "end": {
                          "line": 10,
                          "column": 35
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 325,
                        "end": 334,
                        "loc": {
                          "start": {
                            "line": 10,
                            "column": 6
                          },
                          "end": {
                            "line": 10,
                            "column": 15
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 326,
                          "end": 334,
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 7
                            },
                            "end": {
                              "line": 10,
                              "column": 15
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "Identifier",
                            "start": 327,
                            "end": 334,
                            "loc": {
                              "start": {
                                "line": 10,
                                "column": 8
                              },
                              "end": {
                                "line": 10,
                                "column": 15
                              }
                            },
                            "name": "objects"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 336,
                        "end": 354,
                        "loc": {
                          "start": {
                            "line": 10,
                            "column": 17
                          },
                          "end": {
                            "line": 10,
                            "column": 35
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 336,
                          "end": 353,
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 17
                            },
                            "end": {
                              "line": 10,
                              "column": 34
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 336,
                            "end": 344,
                            "loc": {
                              "start": {
                                "line": 10,
                                "column": 17
                              },
                              "end": {
                                "line": 10,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 336,
                              "end": 340,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 17
                                },
                                "end": {
                                  "line": 10,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 341,
                              "end": 344,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 22
                                },
                                "end": {
                                  "line": 10,
                                  "column": 25
                                }
                              },
                              "name": "add"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 345,
                              "end": 352,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 26
                                },
                                "end": {
                                  "line": 10,
                                  "column": 33
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [],
        "trailingComments": []
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 361,
      "end": 825,
      "loc": {
        "start": {
          "line": 14,
          "column": 0
        },
        "end": {
          "line": 33,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 361,
        "end": 825,
        "loc": {
          "start": {
            "line": 14,
            "column": 0
          },
          "end": {
            "line": 33,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 361,
          "end": 382,
          "loc": {
            "start": {
              "line": 14,
              "column": 0
            },
            "end": {
              "line": 14,
              "column": 21
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 361,
            "end": 375,
            "loc": {
              "start": {
                "line": 14,
                "column": 0
              },
              "end": {
                "line": 14,
                "column": 14
              }
            },
            "object": {
              "type": "Identifier",
              "start": 361,
              "end": 366,
              "loc": {
                "start": {
                  "line": 14,
                  "column": 0
                },
                "end": {
                  "line": 14,
                  "column": 5
                }
              },
              "name": "THREE"
            },
            "property": {
              "type": "Identifier",
              "start": 367,
              "end": 375,
              "loc": {
                "start": {
                  "line": 14,
                  "column": 6
                },
                "end": {
                  "line": 14,
                  "column": 14
                }
              },
              "name": "Object3D"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 376,
            "end": 382,
            "loc": {
              "start": {
                "line": 14,
                "column": 15
              },
              "end": {
                "line": 14,
                "column": 21
              }
            },
            "name": "Events"
          },
          "computed": false
        },
        "right": {
          "type": "ObjectExpression",
          "start": 385,
          "end": 825,
          "loc": {
            "start": {
              "line": 14,
              "column": 24
            },
            "end": {
              "line": 33,
              "column": 1
            }
          },
          "properties": [
            {
              "type": "Property",
              "start": 391,
              "end": 634,
              "loc": {
                "start": {
                  "line": 15,
                  "column": 4
                },
                "end": {
                  "line": 24,
                  "column": 5
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 391,
                "end": 400,
                "loc": {
                  "start": {
                    "line": 15,
                    "column": 4
                  },
                  "end": {
                    "line": 15,
                    "column": 13
                  }
                },
                "name": "Lifecycle"
              },
              "value": {
                "type": "ObjectExpression",
                "start": 402,
                "end": 634,
                "loc": {
                  "start": {
                    "line": 15,
                    "column": 15
                  },
                  "end": {
                    "line": 24,
                    "column": 5
                  }
                },
                "properties": [
                  {
                    "type": "Property",
                    "start": 409,
                    "end": 425,
                    "loc": {
                      "start": {
                        "line": 16,
                        "column": 5
                      },
                      "end": {
                        "line": 16,
                        "column": 21
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 409,
                      "end": 415,
                      "loc": {
                        "start": {
                          "line": 16,
                          "column": 5
                        },
                        "end": {
                          "line": 16,
                          "column": 11
                        }
                      },
                      "name": "Loaded"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 417,
                      "end": 425,
                      "loc": {
                        "start": {
                          "line": 16,
                          "column": 13
                        },
                        "end": {
                          "line": 16,
                          "column": 21
                        }
                      },
                      "value": "Loaded",
                      "rawValue": "Loaded",
                      "raw": "'Loaded'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 432,
                    "end": 446,
                    "loc": {
                      "start": {
                        "line": 17,
                        "column": 5
                      },
                      "end": {
                        "line": 17,
                        "column": 19
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 432,
                      "end": 437,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 5
                        },
                        "end": {
                          "line": 17,
                          "column": 10
                        }
                      },
                      "name": "Added"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 439,
                      "end": 446,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 12
                        },
                        "end": {
                          "line": 17,
                          "column": 19
                        }
                      },
                      "value": "Added",
                      "rawValue": "Added",
                      "raw": "'Added'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 456,
                    "end": 478,
                    "loc": {
                      "start": {
                        "line": 18,
                        "column": 8
                      },
                      "end": {
                        "line": 18,
                        "column": 30
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 456,
                      "end": 465,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 8
                        },
                        "end": {
                          "line": 18,
                          "column": 17
                        }
                      },
                      "name": "ViewFound"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 467,
                      "end": 478,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 19
                        },
                        "end": {
                          "line": 18,
                          "column": 30
                        }
                      },
                      "value": "ViewFound",
                      "rawValue": "ViewFound",
                      "raw": "'ViewFound'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 485,
                    "end": 509,
                    "loc": {
                      "start": {
                        "line": 19,
                        "column": 5
                      },
                      "end": {
                        "line": 19,
                        "column": 29
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 485,
                      "end": 495,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 5
                        },
                        "end": {
                          "line": 19,
                          "column": 15
                        }
                      },
                      "name": "ChildAdded"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 497,
                      "end": 509,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 17
                        },
                        "end": {
                          "line": 19,
                          "column": 29
                        }
                      },
                      "value": "ChildAdded",
                      "rawValue": "ChildAdded",
                      "raw": "'ChildAdded'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 516,
                    "end": 534,
                    "loc": {
                      "start": {
                        "line": 20,
                        "column": 5
                      },
                      "end": {
                        "line": 20,
                        "column": 23
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 516,
                      "end": 523,
                      "loc": {
                        "start": {
                          "line": 20,
                          "column": 5
                        },
                        "end": {
                          "line": 20,
                          "column": 12
                        }
                      },
                      "name": "Removed"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 525,
                      "end": 534,
                      "loc": {
                        "start": {
                          "line": 20,
                          "column": 14
                        },
                        "end": {
                          "line": 20,
                          "column": 23
                        }
                      },
                      "value": "Removed",
                      "rawValue": "Removed",
                      "raw": "'Removed'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 541,
                    "end": 569,
                    "loc": {
                      "start": {
                        "line": 21,
                        "column": 5
                      },
                      "end": {
                        "line": 21,
                        "column": 33
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 541,
                      "end": 553,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 5
                        },
                        "end": {
                          "line": 21,
                          "column": 17
                        }
                      },
                      "name": "ChildRemoved"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 555,
                      "end": 569,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 19
                        },
                        "end": {
                          "line": 21,
                          "column": 33
                        }
                      },
                      "value": "ChildRemoved",
                      "rawValue": "ChildRemoved",
                      "raw": "'ChildRemoved'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 576,
                    "end": 598,
                    "loc": {
                      "start": {
                        "line": 22,
                        "column": 5
                      },
                      "end": {
                        "line": 22,
                        "column": 27
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 576,
                      "end": 585,
                      "loc": {
                        "start": {
                          "line": 22,
                          "column": 5
                        },
                        "end": {
                          "line": 22,
                          "column": 14
                        }
                      },
                      "name": "Destroyed"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 587,
                      "end": 598,
                      "loc": {
                        "start": {
                          "line": 22,
                          "column": 16
                        },
                        "end": {
                          "line": 22,
                          "column": 27
                        }
                      },
                      "value": "Destroyed",
                      "rawValue": "Destroyed",
                      "raw": "'Destroyed'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 608,
                    "end": 628,
                    "loc": {
                      "start": {
                        "line": 23,
                        "column": 8
                      },
                      "end": {
                        "line": 23,
                        "column": 28
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 608,
                      "end": 616,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 8
                        },
                        "end": {
                          "line": 23,
                          "column": 16
                        }
                      },
                      "name": "Rendered"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 618,
                      "end": 628,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 18
                        },
                        "end": {
                          "line": 23,
                          "column": 28
                        }
                      },
                      "value": "Rendered",
                      "rawValue": "Rendered",
                      "raw": "'Rendered'"
                    },
                    "kind": "init"
                  }
                ]
              },
              "kind": "init"
            },
            {
              "type": "Property",
              "start": 640,
              "end": 823,
              "loc": {
                "start": {
                  "line": 25,
                  "column": 4
                },
                "end": {
                  "line": 32,
                  "column": 5
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 640,
                "end": 651,
                "loc": {
                  "start": {
                    "line": 25,
                    "column": 4
                  },
                  "end": {
                    "line": 25,
                    "column": 15
                  }
                },
                "name": "Interaction"
              },
              "value": {
                "type": "ObjectExpression",
                "start": 653,
                "end": 823,
                "loc": {
                  "start": {
                    "line": 25,
                    "column": 17
                  },
                  "end": {
                    "line": 32,
                    "column": 5
                  }
                },
                "properties": [
                  {
                    "type": "Property",
                    "start": 663,
                    "end": 681,
                    "loc": {
                      "start": {
                        "line": 26,
                        "column": 8
                      },
                      "end": {
                        "line": 26,
                        "column": 26
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 663,
                      "end": 670,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 8
                        },
                        "end": {
                          "line": 26,
                          "column": 15
                        }
                      },
                      "name": "Clicked"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 672,
                      "end": 681,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 17
                        },
                        "end": {
                          "line": 26,
                          "column": 26
                        }
                      },
                      "value": "Clicked",
                      "rawValue": "Clicked",
                      "raw": "'Clicked'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 691,
                    "end": 707,
                    "loc": {
                      "start": {
                        "line": 27,
                        "column": 8
                      },
                      "end": {
                        "line": 27,
                        "column": 24
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 691,
                      "end": 697,
                      "loc": {
                        "start": {
                          "line": 27,
                          "column": 8
                        },
                        "end": {
                          "line": 27,
                          "column": 14
                        }
                      },
                      "name": "Picked"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 699,
                      "end": 707,
                      "loc": {
                        "start": {
                          "line": 27,
                          "column": 16
                        },
                        "end": {
                          "line": 27,
                          "column": 24
                        }
                      },
                      "value": "Picked",
                      "rawValue": "Picked",
                      "raw": "'Picked'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 717,
                    "end": 735,
                    "loc": {
                      "start": {
                        "line": 28,
                        "column": 8
                      },
                      "end": {
                        "line": 28,
                        "column": 26
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 717,
                      "end": 724,
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 8
                        },
                        "end": {
                          "line": 28,
                          "column": 15
                        }
                      },
                      "name": "Dropped"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 726,
                      "end": 735,
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 17
                        },
                        "end": {
                          "line": 28,
                          "column": 26
                        }
                      },
                      "value": "Dropped",
                      "rawValue": "Dropped",
                      "raw": "'Dropped'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 742,
                    "end": 760,
                    "loc": {
                      "start": {
                        "line": 29,
                        "column": 5
                      },
                      "end": {
                        "line": 29,
                        "column": 23
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 742,
                      "end": 749,
                      "loc": {
                        "start": {
                          "line": 29,
                          "column": 5
                        },
                        "end": {
                          "line": 29,
                          "column": 12
                        }
                      },
                      "name": "Dragged"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 751,
                      "end": 760,
                      "loc": {
                        "start": {
                          "line": 29,
                          "column": 14
                        },
                        "end": {
                          "line": 29,
                          "column": 23
                        }
                      },
                      "value": "Dragged",
                      "rawValue": "Dragged",
                      "raw": "'Dragged'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 767,
                    "end": 785,
                    "loc": {
                      "start": {
                        "line": 30,
                        "column": 5
                      },
                      "end": {
                        "line": 30,
                        "column": 23
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 767,
                      "end": 774,
                      "loc": {
                        "start": {
                          "line": 30,
                          "column": 5
                        },
                        "end": {
                          "line": 30,
                          "column": 12
                        }
                      },
                      "name": "Hovered"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 776,
                      "end": 785,
                      "loc": {
                        "start": {
                          "line": 30,
                          "column": 14
                        },
                        "end": {
                          "line": 30,
                          "column": 23
                        }
                      },
                      "value": "Hovered",
                      "rawValue": "Hovered",
                      "raw": "'Hovered'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 795,
                    "end": 817,
                    "loc": {
                      "start": {
                        "line": 31,
                        "column": 8
                      },
                      "end": {
                        "line": 31,
                        "column": 30
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 795,
                      "end": 804,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 8
                        },
                        "end": {
                          "line": 31,
                          "column": 17
                        }
                      },
                      "name": "Unhovered"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 806,
                      "end": 817,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 19
                        },
                        "end": {
                          "line": 31,
                          "column": 30
                        }
                      },
                      "value": "Unhovered",
                      "rawValue": "Unhovered",
                      "raw": "'Unhovered'"
                    },
                    "kind": "init"
                  }
                ]
              },
              "kind": "init"
            }
          ]
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 827,
      "end": 871,
      "loc": {
        "start": {
          "line": 35,
          "column": 0
        },
        "end": {
          "line": 35,
          "column": 44
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 827,
        "end": 870,
        "loc": {
          "start": {
            "line": 35,
            "column": 0
          },
          "end": {
            "line": 35,
            "column": 43
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 827,
          "end": 858,
          "loc": {
            "start": {
              "line": 35,
              "column": 0
            },
            "end": {
              "line": 35,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 827,
            "end": 851,
            "loc": {
              "start": {
                "line": 35,
                "column": 0
              },
              "end": {
                "line": 35,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 827,
              "end": 841,
              "loc": {
                "start": {
                  "line": 35,
                  "column": 0
                },
                "end": {
                  "line": 35,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 827,
                "end": 832,
                "loc": {
                  "start": {
                    "line": 35,
                    "column": 0
                  },
                  "end": {
                    "line": 35,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 833,
                "end": 841,
                "loc": {
                  "start": {
                    "line": 35,
                    "column": 6
                  },
                  "end": {
                    "line": 35,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 842,
              "end": 851,
              "loc": {
                "start": {
                  "line": 35,
                  "column": 15
                },
                "end": {
                  "line": 35,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 852,
            "end": 858,
            "loc": {
              "start": {
                "line": 35,
                "column": 25
              },
              "end": {
                "line": 35,
                "column": 31
              }
            },
            "name": "canvas"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 861,
          "end": 870,
          "loc": {
            "start": {
              "line": 35,
              "column": 34
            },
            "end": {
              "line": 35,
              "column": 43
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 872,
      "end": 914,
      "loc": {
        "start": {
          "line": 36,
          "column": 0
        },
        "end": {
          "line": 36,
          "column": 42
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 872,
        "end": 913,
        "loc": {
          "start": {
            "line": 36,
            "column": 0
          },
          "end": {
            "line": 36,
            "column": 41
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 872,
          "end": 901,
          "loc": {
            "start": {
              "line": 36,
              "column": 0
            },
            "end": {
              "line": 36,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 872,
            "end": 896,
            "loc": {
              "start": {
                "line": 36,
                "column": 0
              },
              "end": {
                "line": 36,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 872,
              "end": 886,
              "loc": {
                "start": {
                  "line": 36,
                  "column": 0
                },
                "end": {
                  "line": 36,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 872,
                "end": 877,
                "loc": {
                  "start": {
                    "line": 36,
                    "column": 0
                  },
                  "end": {
                    "line": 36,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 878,
                "end": 886,
                "loc": {
                  "start": {
                    "line": 36,
                    "column": 6
                  },
                  "end": {
                    "line": 36,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 887,
              "end": 896,
              "loc": {
                "start": {
                  "line": 36,
                  "column": 15
                },
                "end": {
                  "line": 36,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 897,
            "end": 901,
            "loc": {
              "start": {
                "line": 36,
                "column": 25
              },
              "end": {
                "line": 36,
                "column": 29
              }
            },
            "name": "view"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 904,
          "end": 913,
          "loc": {
            "start": {
              "line": 36,
              "column": 32
            },
            "end": {
              "line": 36,
              "column": 41
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 915,
      "end": 959,
      "loc": {
        "start": {
          "line": 37,
          "column": 0
        },
        "end": {
          "line": 37,
          "column": 44
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 915,
        "end": 958,
        "loc": {
          "start": {
            "line": 37,
            "column": 0
          },
          "end": {
            "line": 37,
            "column": 43
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 915,
          "end": 946,
          "loc": {
            "start": {
              "line": 37,
              "column": 0
            },
            "end": {
              "line": 37,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 915,
            "end": 939,
            "loc": {
              "start": {
                "line": 37,
                "column": 0
              },
              "end": {
                "line": 37,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 915,
              "end": 929,
              "loc": {
                "start": {
                  "line": 37,
                  "column": 0
                },
                "end": {
                  "line": 37,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 915,
                "end": 920,
                "loc": {
                  "start": {
                    "line": 37,
                    "column": 0
                  },
                  "end": {
                    "line": 37,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 921,
                "end": 929,
                "loc": {
                  "start": {
                    "line": 37,
                    "column": 6
                  },
                  "end": {
                    "line": 37,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 930,
              "end": 939,
              "loc": {
                "start": {
                  "line": 37,
                  "column": 15
                },
                "end": {
                  "line": 37,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 940,
            "end": 946,
            "loc": {
              "start": {
                "line": 37,
                "column": 25
              },
              "end": {
                "line": 37,
                "column": 31
              }
            },
            "name": "bounds"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 949,
          "end": 958,
          "loc": {
            "start": {
              "line": 37,
              "column": 34
            },
            "end": {
              "line": 37,
              "column": 43
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 960,
      "end": 1007,
      "loc": {
        "start": {
          "line": 38,
          "column": 0
        },
        "end": {
          "line": 38,
          "column": 47
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 960,
        "end": 1006,
        "loc": {
          "start": {
            "line": 38,
            "column": 0
          },
          "end": {
            "line": 38,
            "column": 46
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 960,
          "end": 994,
          "loc": {
            "start": {
              "line": 38,
              "column": 0
            },
            "end": {
              "line": 38,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 960,
            "end": 984,
            "loc": {
              "start": {
                "line": 38,
                "column": 0
              },
              "end": {
                "line": 38,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 960,
              "end": 974,
              "loc": {
                "start": {
                  "line": 38,
                  "column": 0
                },
                "end": {
                  "line": 38,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 960,
                "end": 965,
                "loc": {
                  "start": {
                    "line": 38,
                    "column": 0
                  },
                  "end": {
                    "line": 38,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 966,
                "end": 974,
                "loc": {
                  "start": {
                    "line": 38,
                    "column": 6
                  },
                  "end": {
                    "line": 38,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 975,
              "end": 984,
              "loc": {
                "start": {
                  "line": 38,
                  "column": 15
                },
                "end": {
                  "line": 38,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 985,
            "end": 994,
            "loc": {
              "start": {
                "line": 38,
                "column": 25
              },
              "end": {
                "line": 38,
                "column": 34
              }
            },
            "name": "materials"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 997,
          "end": 1006,
          "loc": {
            "start": {
              "line": 38,
              "column": 37
            },
            "end": {
              "line": 38,
              "column": 46
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1008,
      "end": 1062,
      "loc": {
        "start": {
          "line": 39,
          "column": 0
        },
        "end": {
          "line": 39,
          "column": 54
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1008,
        "end": 1061,
        "loc": {
          "start": {
            "line": 39,
            "column": 0
          },
          "end": {
            "line": 39,
            "column": 53
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1008,
          "end": 1054,
          "loc": {
            "start": {
              "line": 39,
              "column": 0
            },
            "end": {
              "line": 39,
              "column": 46
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1008,
            "end": 1032,
            "loc": {
              "start": {
                "line": 39,
                "column": 0
              },
              "end": {
                "line": 39,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1008,
              "end": 1022,
              "loc": {
                "start": {
                  "line": 39,
                  "column": 0
                },
                "end": {
                  "line": 39,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1008,
                "end": 1013,
                "loc": {
                  "start": {
                    "line": 39,
                    "column": 0
                  },
                  "end": {
                    "line": 39,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1014,
                "end": 1022,
                "loc": {
                  "start": {
                    "line": 39,
                    "column": 6
                  },
                  "end": {
                    "line": 39,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1023,
              "end": 1032,
              "loc": {
                "start": {
                  "line": 39,
                  "column": 15
                },
                "end": {
                  "line": 39,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1033,
            "end": 1054,
            "loc": {
              "start": {
                "line": 39,
                "column": 25
              },
              "end": {
                "line": 39,
                "column": 46
              }
            },
            "name": "updateParentMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 1057,
          "end": 1061,
          "loc": {
            "start": {
              "line": 39,
              "column": 49
            },
            "end": {
              "line": 39,
              "column": 53
            }
          },
          "value": true,
          "rawValue": true,
          "raw": "true"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1063,
      "end": 1101,
      "loc": {
        "start": {
          "line": 40,
          "column": 0
        },
        "end": {
          "line": 40,
          "column": 38
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1063,
        "end": 1100,
        "loc": {
          "start": {
            "line": 40,
            "column": 0
          },
          "end": {
            "line": 40,
            "column": 37
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1063,
          "end": 1092,
          "loc": {
            "start": {
              "line": 40,
              "column": 0
            },
            "end": {
              "line": 40,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1063,
            "end": 1087,
            "loc": {
              "start": {
                "line": 40,
                "column": 0
              },
              "end": {
                "line": 40,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1063,
              "end": 1077,
              "loc": {
                "start": {
                  "line": 40,
                  "column": 0
                },
                "end": {
                  "line": 40,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1063,
                "end": 1068,
                "loc": {
                  "start": {
                    "line": 40,
                    "column": 0
                  },
                  "end": {
                    "line": 40,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1069,
                "end": 1077,
                "loc": {
                  "start": {
                    "line": 40,
                    "column": 6
                  },
                  "end": {
                    "line": 40,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1078,
              "end": 1087,
              "loc": {
                "start": {
                  "line": 40,
                  "column": 15
                },
                "end": {
                  "line": 40,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1088,
            "end": 1092,
            "loc": {
              "start": {
                "line": 40,
                "column": 25
              },
              "end": {
                "line": 40,
                "column": 29
              }
            },
            "name": "keep"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 1095,
          "end": 1100,
          "loc": {
            "start": {
              "line": 40,
              "column": 32
            },
            "end": {
              "line": 40,
              "column": 37
            }
          },
          "value": false,
          "rawValue": false,
          "raw": "false"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1102,
      "end": 1141,
      "loc": {
        "start": {
          "line": 41,
          "column": 0
        },
        "end": {
          "line": 41,
          "column": 39
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1102,
        "end": 1140,
        "loc": {
          "start": {
            "line": 41,
            "column": 0
          },
          "end": {
            "line": 41,
            "column": 38
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1102,
          "end": 1133,
          "loc": {
            "start": {
              "line": 41,
              "column": 0
            },
            "end": {
              "line": 41,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1102,
            "end": 1126,
            "loc": {
              "start": {
                "line": 41,
                "column": 0
              },
              "end": {
                "line": 41,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1102,
              "end": 1116,
              "loc": {
                "start": {
                  "line": 41,
                  "column": 0
                },
                "end": {
                  "line": 41,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1102,
                "end": 1107,
                "loc": {
                  "start": {
                    "line": 41,
                    "column": 0
                  },
                  "end": {
                    "line": 41,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1108,
                "end": 1116,
                "loc": {
                  "start": {
                    "line": 41,
                    "column": 6
                  },
                  "end": {
                    "line": 41,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1117,
              "end": 1126,
              "loc": {
                "start": {
                  "line": 41,
                  "column": 15
                },
                "end": {
                  "line": 41,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1127,
            "end": 1133,
            "loc": {
              "start": {
                "line": 41,
                "column": 25
              },
              "end": {
                "line": 41,
                "column": 31
              }
            },
            "name": "tweens"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 1136,
          "end": 1140,
          "loc": {
            "start": {
              "line": 41,
              "column": 34
            },
            "end": {
              "line": 41,
              "column": 38
            }
          },
          "value": true,
          "rawValue": true,
          "raw": "true"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1142,
      "end": 1191,
      "loc": {
        "start": {
          "line": 42,
          "column": 0
        },
        "end": {
          "line": 42,
          "column": 49
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1142,
        "end": 1190,
        "loc": {
          "start": {
            "line": 42,
            "column": 0
          },
          "end": {
            "line": 42,
            "column": 48
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1142,
          "end": 1178,
          "loc": {
            "start": {
              "line": 42,
              "column": 0
            },
            "end": {
              "line": 42,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1142,
            "end": 1166,
            "loc": {
              "start": {
                "line": 42,
                "column": 0
              },
              "end": {
                "line": 42,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1142,
              "end": 1156,
              "loc": {
                "start": {
                  "line": 42,
                  "column": 0
                },
                "end": {
                  "line": 42,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1142,
                "end": 1147,
                "loc": {
                  "start": {
                    "line": 42,
                    "column": 0
                  },
                  "end": {
                    "line": 42,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1148,
                "end": 1156,
                "loc": {
                  "start": {
                    "line": 42,
                    "column": 6
                  },
                  "end": {
                    "line": 42,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1157,
              "end": 1166,
              "loc": {
                "start": {
                  "line": 42,
                  "column": 15
                },
                "end": {
                  "line": 42,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1167,
            "end": 1178,
            "loc": {
              "start": {
                "line": 42,
                "column": 25
              },
              "end": {
                "line": 42,
                "column": 36
              }
            },
            "name": "interaction"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 1181,
          "end": 1190,
          "loc": {
            "start": {
              "line": 42,
              "column": 39
            },
            "end": {
              "line": 42,
              "column": 48
            }
          },
          "name": "undefined"
        }
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": " Extend Object3D with event emitter",
          "start": 1193,
          "end": 1230,
          "loc": {
            "start": {
              "line": 44,
              "column": 0
            },
            "end": {
              "line": 44,
              "column": 37
            }
          },
          "range": [
            1193,
            1230
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 1231,
      "end": 1270,
      "loc": {
        "start": {
          "line": 45,
          "column": 0
        },
        "end": {
          "line": 45,
          "column": 39
        }
      },
      "expression": {
        "type": "CallExpression",
        "start": 1231,
        "end": 1269,
        "loc": {
          "start": {
            "line": 45,
            "column": 0
          },
          "end": {
            "line": 45,
            "column": 38
          }
        },
        "callee": {
          "type": "MemberExpression",
          "start": 1231,
          "end": 1243,
          "loc": {
            "start": {
              "line": 45,
              "column": 0
            },
            "end": {
              "line": 45,
              "column": 12
            }
          },
          "object": {
            "type": "Identifier",
            "start": 1231,
            "end": 1237,
            "loc": {
              "start": {
                "line": 45,
                "column": 0
              },
              "end": {
                "line": 45,
                "column": 6
              }
            },
            "name": "Events",
            "leadingComments": null
          },
          "property": {
            "type": "Identifier",
            "start": 1238,
            "end": 1243,
            "loc": {
              "start": {
                "line": 45,
                "column": 7
              },
              "end": {
                "line": 45,
                "column": 12
              }
            },
            "name": "mixin"
          },
          "computed": false,
          "leadingComments": null
        },
        "arguments": [
          {
            "type": "MemberExpression",
            "start": 1244,
            "end": 1268,
            "loc": {
              "start": {
                "line": 45,
                "column": 13
              },
              "end": {
                "line": 45,
                "column": 37
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1244,
              "end": 1258,
              "loc": {
                "start": {
                  "line": 45,
                  "column": 13
                },
                "end": {
                  "line": 45,
                  "column": 27
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1244,
                "end": 1249,
                "loc": {
                  "start": {
                    "line": 45,
                    "column": 13
                  },
                  "end": {
                    "line": 45,
                    "column": 18
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1250,
                "end": 1258,
                "loc": {
                  "start": {
                    "line": 45,
                    "column": 19
                  },
                  "end": {
                    "line": 45,
                    "column": 27
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1259,
              "end": 1268,
              "loc": {
                "start": {
                  "line": 45,
                  "column": 28
                },
                "end": {
                  "line": 45,
                  "column": 37
                }
              },
              "name": "prototype"
            },
            "computed": false
          }
        ],
        "leadingComments": null
      },
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": " Extend Object3D with event emitter",
          "start": 1193,
          "end": 1230,
          "loc": {
            "start": {
              "line": 44,
              "column": 0
            },
            "end": {
              "line": 44,
              "column": 37
            }
          },
          "range": [
            1193,
            1230
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 1272,
      "end": 2268,
      "loc": {
        "start": {
          "line": 47,
          "column": 0
        },
        "end": {
          "line": 77,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1272,
        "end": 2268,
        "loc": {
          "start": {
            "line": 47,
            "column": 0
          },
          "end": {
            "line": 77,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1272,
          "end": 1314,
          "loc": {
            "start": {
              "line": 47,
              "column": 0
            },
            "end": {
              "line": 47,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1272,
            "end": 1296,
            "loc": {
              "start": {
                "line": 47,
                "column": 0
              },
              "end": {
                "line": 47,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1272,
              "end": 1286,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 0
                },
                "end": {
                  "line": 47,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1272,
                "end": 1277,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 0
                  },
                  "end": {
                    "line": 47,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1278,
                "end": 1286,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 6
                  },
                  "end": {
                    "line": 47,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1287,
              "end": 1296,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 15
                },
                "end": {
                  "line": 47,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1297,
            "end": 1314,
            "loc": {
              "start": {
                "line": 47,
                "column": 25
              },
              "end": {
                "line": 47,
                "column": 42
              }
            },
            "name": "createInteraction"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 1317,
          "end": 2268,
          "loc": {
            "start": {
              "line": 47,
              "column": 45
            },
            "end": {
              "line": 77,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 1297,
            "end": 1314,
            "loc": {
              "start": {
                "line": 47,
                "column": 25
              },
              "end": {
                "line": 47,
                "column": 42
              }
            },
            "name": "createInteraction"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 1326,
              "end": 1338,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 54
                },
                "end": {
                  "line": 47,
                  "column": 66
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 1326,
                "end": 1333,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 54
                  },
                  "end": {
                    "line": 47,
                    "column": 61
                  }
                },
                "name": "options"
              },
              "right": {
                "type": "ObjectExpression",
                "start": 1336,
                "end": 1338,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 64
                  },
                  "end": {
                    "line": 47,
                    "column": 66
                  }
                },
                "properties": []
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 1340,
            "end": 2268,
            "loc": {
              "start": {
                "line": 47,
                "column": 68
              },
              "end": {
                "line": 77,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 1346,
                "end": 1388,
                "loc": {
                  "start": {
                    "line": 48,
                    "column": 4
                  },
                  "end": {
                    "line": 49,
                    "column": 20
                  }
                },
                "test": {
                  "type": "MemberExpression",
                  "start": 1350,
                  "end": 1366,
                  "loc": {
                    "start": {
                      "line": 48,
                      "column": 8
                    },
                    "end": {
                      "line": 48,
                      "column": 24
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 1350,
                    "end": 1354,
                    "loc": {
                      "start": {
                        "line": 48,
                        "column": 8
                      },
                      "end": {
                        "line": 48,
                        "column": 12
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 1355,
                    "end": 1366,
                    "loc": {
                      "start": {
                        "line": 48,
                        "column": 13
                      },
                      "end": {
                        "line": 48,
                        "column": 24
                      }
                    },
                    "name": "interaction"
                  },
                  "computed": false
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 1376,
                  "end": 1388,
                  "loc": {
                    "start": {
                      "line": 49,
                      "column": 8
                    },
                    "end": {
                      "line": 49,
                      "column": 20
                    }
                  },
                  "argument": {
                    "type": "ThisExpression",
                    "start": 1383,
                    "end": 1387,
                    "loc": {
                      "start": {
                        "line": 49,
                        "column": 15
                      },
                      "end": {
                        "line": 49,
                        "column": 19
                      }
                    }
                  }
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 1394,
                "end": 1602,
                "loc": {
                  "start": {
                    "line": 51,
                    "column": 4
                  },
                  "end": {
                    "line": 59,
                    "column": 6
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 1394,
                  "end": 1601,
                  "loc": {
                    "start": {
                      "line": 51,
                      "column": 4
                    },
                    "end": {
                      "line": 59,
                      "column": 5
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 1394,
                    "end": 1410,
                    "loc": {
                      "start": {
                        "line": 51,
                        "column": 4
                      },
                      "end": {
                        "line": 51,
                        "column": 20
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 1394,
                      "end": 1398,
                      "loc": {
                        "start": {
                          "line": 51,
                          "column": 4
                        },
                        "end": {
                          "line": 51,
                          "column": 8
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 1399,
                      "end": 1410,
                      "loc": {
                        "start": {
                          "line": 51,
                          "column": 9
                        },
                        "end": {
                          "line": 51,
                          "column": 20
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 1413,
                    "end": 1601,
                    "loc": {
                      "start": {
                        "line": 51,
                        "column": 23
                      },
                      "end": {
                        "line": 59,
                        "column": 5
                      }
                    },
                    "properties": [
                      {
                        "type": "Property",
                        "start": 1423,
                        "end": 1434,
                        "loc": {
                          "start": {
                            "line": 52,
                            "column": 8
                          },
                          "end": {
                            "line": 52,
                            "column": 19
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1423,
                          "end": 1428,
                          "loc": {
                            "start": {
                              "line": 52,
                              "column": 8
                            },
                            "end": {
                              "line": 52,
                              "column": 13
                            }
                          },
                          "name": "first"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1430,
                          "end": 1434,
                          "loc": {
                            "start": {
                              "line": 52,
                              "column": 15
                            },
                            "end": {
                              "line": 52,
                              "column": 19
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1444,
                        "end": 1455,
                        "loc": {
                          "start": {
                            "line": 53,
                            "column": 8
                          },
                          "end": {
                            "line": 53,
                            "column": 19
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1444,
                          "end": 1452,
                          "loc": {
                            "start": {
                              "line": 53,
                              "column": 8
                            },
                            "end": {
                              "line": 53,
                              "column": 16
                            }
                          },
                          "name": "priority"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1454,
                          "end": 1455,
                          "loc": {
                            "start": {
                              "line": 53,
                              "column": 18
                            },
                            "end": {
                              "line": 53,
                              "column": 19
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1465,
                        "end": 1478,
                        "loc": {
                          "start": {
                            "line": 54,
                            "column": 8
                          },
                          "end": {
                            "line": 54,
                            "column": 21
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1465,
                          "end": 1472,
                          "loc": {
                            "start": {
                              "line": 54,
                              "column": 8
                            },
                            "end": {
                              "line": 54,
                              "column": 15
                            }
                          },
                          "name": "enabled"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1474,
                          "end": 1478,
                          "loc": {
                            "start": {
                              "line": 54,
                              "column": 17
                            },
                            "end": {
                              "line": 54,
                              "column": 21
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1488,
                        "end": 1504,
                        "loc": {
                          "start": {
                            "line": 55,
                            "column": 8
                          },
                          "end": {
                            "line": 55,
                            "column": 24
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1488,
                          "end": 1497,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 8
                            },
                            "end": {
                              "line": 55,
                              "column": 17
                            }
                          },
                          "name": "recursive"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1499,
                          "end": 1504,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 19
                            },
                            "end": {
                              "line": 55,
                              "column": 24
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1514,
                        "end": 1550,
                        "loc": {
                          "start": {
                            "line": 56,
                            "column": 8
                          },
                          "end": {
                            "line": 56,
                            "column": 44
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1514,
                          "end": 1522,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 8
                            },
                            "end": {
                              "line": 56,
                              "column": 16
                            }
                          },
                          "name": "approach"
                        },
                        "value": {
                          "type": "MemberExpression",
                          "start": 1524,
                          "end": 1550,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 18
                            },
                            "end": {
                              "line": 56,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1524,
                            "end": 1542,
                            "loc": {
                              "start": {
                                "line": 56,
                                "column": 18
                              },
                              "end": {
                                "line": 56,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1524,
                              "end": 1533,
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 18
                                },
                                "end": {
                                  "line": 56,
                                  "column": 27
                                }
                              },
                              "name": "Raycaster"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1534,
                              "end": 1542,
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 28
                                },
                                "end": {
                                  "line": 56,
                                  "column": 36
                                }
                              },
                              "name": "Approach"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1543,
                            "end": 1550,
                            "loc": {
                              "start": {
                                "line": 56,
                                "column": 37
                              },
                              "end": {
                                "line": 56,
                                "column": 44
                              }
                            },
                            "name": "Default"
                          },
                          "computed": false
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1560,
                        "end": 1575,
                        "loc": {
                          "start": {
                            "line": 57,
                            "column": 8
                          },
                          "end": {
                            "line": 57,
                            "column": 23
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1560,
                          "end": 1565,
                          "loc": {
                            "start": {
                              "line": 57,
                              "column": 8
                            },
                            "end": {
                              "line": 57,
                              "column": 13
                            }
                          },
                          "name": "types"
                        },
                        "value": {
                          "type": "ArrayExpression",
                          "start": 1567,
                          "end": 1575,
                          "loc": {
                            "start": {
                              "line": 57,
                              "column": 15
                            },
                            "end": {
                              "line": 57,
                              "column": 23
                            }
                          },
                          "elements": [
                            {
                              "type": "Literal",
                              "start": 1568,
                              "end": 1574,
                              "loc": {
                                "start": {
                                  "line": 57,
                                  "column": 16
                                },
                                "end": {
                                  "line": 57,
                                  "column": 22
                                }
                              },
                              "value": "Mesh",
                              "rawValue": "Mesh",
                              "raw": "'Mesh'"
                            }
                          ]
                        },
                        "kind": "init"
                      },
                      {
                        "type": "SpreadProperty",
                        "start": 1585,
                        "end": 1595,
                        "loc": {
                          "start": {
                            "line": 58,
                            "column": 8
                          },
                          "end": {
                            "line": 58,
                            "column": 18
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 1588,
                          "end": 1595,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 11
                            },
                            "end": {
                              "line": 58,
                              "column": 18
                            }
                          },
                          "name": "options"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "VariableDeclaration",
                "start": 1608,
                "end": 1625,
                "loc": {
                  "start": {
                    "line": 61,
                    "column": 4
                  },
                  "end": {
                    "line": 61,
                    "column": 21
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 1612,
                    "end": 1624,
                    "loc": {
                      "start": {
                        "line": 61,
                        "column": 8
                      },
                      "end": {
                        "line": 61,
                        "column": 20
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 1612,
                      "end": 1617,
                      "loc": {
                        "start": {
                          "line": 61,
                          "column": 8
                        },
                        "end": {
                          "line": 61,
                          "column": 13
                        }
                      },
                      "name": "scope"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 1620,
                      "end": 1624,
                      "loc": {
                        "start": {
                          "line": 61,
                          "column": 16
                        },
                        "end": {
                          "line": 61,
                          "column": 20
                        }
                      }
                    }
                  }
                ],
                "kind": "let"
              },
              {
                "type": "ExpressionStatement",
                "start": 1630,
                "end": 1969,
                "loc": {
                  "start": {
                    "line": 62,
                    "column": 4
                  },
                  "end": {
                    "line": 70,
                    "column": 7
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 1630,
                  "end": 1968,
                  "loc": {
                    "start": {
                      "line": 62,
                      "column": 4
                    },
                    "end": {
                      "line": 70,
                      "column": 6
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 1630,
                    "end": 1651,
                    "loc": {
                      "start": {
                        "line": 62,
                        "column": 4
                      },
                      "end": {
                        "line": 62,
                        "column": 25
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 1630,
                      "end": 1646,
                      "loc": {
                        "start": {
                          "line": 62,
                          "column": 4
                        },
                        "end": {
                          "line": 62,
                          "column": 20
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 1630,
                        "end": 1644,
                        "loc": {
                          "start": {
                            "line": 62,
                            "column": 4
                          },
                          "end": {
                            "line": 62,
                            "column": 18
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 1630,
                          "end": 1634,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 4
                            },
                            "end": {
                              "line": 62,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 1635,
                          "end": 1644,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 9
                            },
                            "end": {
                              "line": 62,
                              "column": 18
                            }
                          },
                          "name": "viewFound"
                        },
                        "computed": false
                      },
                      "arguments": []
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 1647,
                      "end": 1651,
                      "loc": {
                        "start": {
                          "line": 62,
                          "column": 21
                        },
                        "end": {
                          "line": 62,
                          "column": 25
                        }
                      },
                      "name": "then"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 1652,
                      "end": 1967,
                      "loc": {
                        "start": {
                          "line": 62,
                          "column": 26
                        },
                        "end": {
                          "line": 70,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 1652,
                          "end": 1656,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 26
                            },
                            "end": {
                              "line": 62,
                              "column": 30
                            }
                          },
                          "name": "view"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 1660,
                        "end": 1967,
                        "loc": {
                          "start": {
                            "line": 62,
                            "column": 34
                          },
                          "end": {
                            "line": 70,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 1670,
                            "end": 1961,
                            "loc": {
                              "start": {
                                "line": 63,
                                "column": 8
                              },
                              "end": {
                                "line": 69,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 1674,
                              "end": 1719,
                              "loc": {
                                "start": {
                                  "line": 63,
                                  "column": 12
                                },
                                "end": {
                                  "line": 63,
                                  "column": 57
                                }
                              },
                              "left": {
                                "type": "CallExpression",
                                "start": 1674,
                                "end": 1713,
                                "loc": {
                                  "start": {
                                    "line": 63,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 63,
                                    "column": 51
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 1674,
                                  "end": 1706,
                                  "loc": {
                                    "start": {
                                      "line": 63,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 63,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1674,
                                    "end": 1698,
                                    "loc": {
                                      "start": {
                                        "line": 63,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 63,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1674,
                                      "end": 1690,
                                      "loc": {
                                        "start": {
                                          "line": 63,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 63,
                                          "column": 28
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1674,
                                        "end": 1678,
                                        "loc": {
                                          "start": {
                                            "line": 63,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 63,
                                            "column": 16
                                          }
                                        },
                                        "name": "view"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1679,
                                        "end": 1690,
                                        "loc": {
                                          "start": {
                                            "line": 63,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 63,
                                            "column": 28
                                          }
                                        },
                                        "name": "interaction"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1691,
                                      "end": 1698,
                                      "loc": {
                                        "start": {
                                          "line": 63,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 63,
                                          "column": 36
                                        }
                                      },
                                      "name": "targets"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1699,
                                    "end": 1706,
                                    "loc": {
                                      "start": {
                                        "line": 63,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 63,
                                        "column": 44
                                      }
                                    },
                                    "name": "indexOf"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 1707,
                                    "end": 1712,
                                    "loc": {
                                      "start": {
                                        "line": 63,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 63,
                                        "column": 50
                                      }
                                    },
                                    "name": "scope"
                                  }
                                ]
                              },
                              "operator": "==",
                              "right": {
                                "type": "UnaryExpression",
                                "start": 1717,
                                "end": 1719,
                                "loc": {
                                  "start": {
                                    "line": 63,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 63,
                                    "column": 57
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 1718,
                                  "end": 1719,
                                  "loc": {
                                    "start": {
                                      "line": 63,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 63,
                                      "column": 57
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 1721,
                              "end": 1961,
                              "loc": {
                                "start": {
                                  "line": 63,
                                  "column": 59
                                },
                                "end": {
                                  "line": 69,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 1735,
                                  "end": 1772,
                                  "loc": {
                                    "start": {
                                      "line": 64,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 64,
                                      "column": 49
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 1735,
                                    "end": 1771,
                                    "loc": {
                                      "start": {
                                        "line": 64,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 64,
                                        "column": 48
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 1735,
                                      "end": 1764,
                                      "loc": {
                                        "start": {
                                          "line": 64,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 64,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1735,
                                        "end": 1759,
                                        "loc": {
                                          "start": {
                                            "line": 64,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 64,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 1735,
                                          "end": 1751,
                                          "loc": {
                                            "start": {
                                              "line": 64,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 64,
                                              "column": 28
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 1735,
                                            "end": 1739,
                                            "loc": {
                                              "start": {
                                                "line": 64,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 64,
                                                "column": 16
                                              }
                                            },
                                            "name": "view"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1740,
                                            "end": 1751,
                                            "loc": {
                                              "start": {
                                                "line": 64,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 64,
                                                "column": 28
                                              }
                                            },
                                            "name": "interaction"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1752,
                                          "end": 1759,
                                          "loc": {
                                            "start": {
                                              "line": 64,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 64,
                                              "column": 36
                                            }
                                          },
                                          "name": "targets"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1760,
                                        "end": 1764,
                                        "loc": {
                                          "start": {
                                            "line": 64,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 64,
                                            "column": 41
                                          }
                                        },
                                        "name": "push"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 1765,
                                        "end": 1770,
                                        "loc": {
                                          "start": {
                                            "line": 64,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 64,
                                            "column": 47
                                          }
                                        },
                                        "name": "scope"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 1786,
                                  "end": 1800,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 26
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 1790,
                                      "end": 1799,
                                      "loc": {
                                        "start": {
                                          "line": 66,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 66,
                                          "column": 25
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 1790,
                                        "end": 1795,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 21
                                          }
                                        },
                                        "name": "count"
                                      },
                                      "init": {
                                        "type": "Literal",
                                        "start": 1798,
                                        "end": 1799,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 25
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    }
                                  ],
                                  "kind": "let"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 1813,
                                  "end": 1868,
                                  "loc": {
                                    "start": {
                                      "line": 67,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 67,
                                      "column": 67
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 1813,
                                    "end": 1867,
                                    "loc": {
                                      "start": {
                                        "line": 67,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 67,
                                        "column": 66
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 1813,
                                      "end": 1832,
                                      "loc": {
                                        "start": {
                                          "line": 67,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 67,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1813,
                                        "end": 1823,
                                        "loc": {
                                          "start": {
                                            "line": 67,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 67,
                                            "column": 22
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 1813,
                                          "end": 1817,
                                          "loc": {
                                            "start": {
                                              "line": 67,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 67,
                                              "column": 16
                                            }
                                          },
                                          "name": "view"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1818,
                                          "end": 1823,
                                          "loc": {
                                            "start": {
                                              "line": 67,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 67,
                                              "column": 22
                                            }
                                          },
                                          "name": "scene"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1824,
                                        "end": 1832,
                                        "loc": {
                                          "start": {
                                            "line": 67,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 67,
                                            "column": 31
                                          }
                                        },
                                        "name": "traverse"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 1833,
                                        "end": 1866,
                                        "loc": {
                                          "start": {
                                            "line": 67,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 67,
                                            "column": 65
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": true,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 1833,
                                            "end": 1837,
                                            "loc": {
                                              "start": {
                                                "line": 67,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 67,
                                                "column": 36
                                              }
                                            },
                                            "name": "item"
                                          }
                                        ],
                                        "body": {
                                          "type": "AssignmentExpression",
                                          "start": 1841,
                                          "end": 1866,
                                          "loc": {
                                            "start": {
                                              "line": 67,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 67,
                                              "column": 65
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 1841,
                                            "end": 1856,
                                            "loc": {
                                              "start": {
                                                "line": 67,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 67,
                                                "column": 55
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1841,
                                              "end": 1845,
                                              "loc": {
                                                "start": {
                                                  "line": 67,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 67,
                                                  "column": 44
                                                }
                                              },
                                              "name": "item"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1846,
                                              "end": 1856,
                                              "loc": {
                                                "start": {
                                                  "line": 67,
                                                  "column": 45
                                                },
                                                "end": {
                                                  "line": 67,
                                                  "column": 55
                                                }
                                              },
                                              "name": "depthIndex"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "UpdateExpression",
                                            "start": 1859,
                                            "end": 1866,
                                            "loc": {
                                              "start": {
                                                "line": 67,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 67,
                                                "column": 65
                                              }
                                            },
                                            "operator": "++",
                                            "prefix": false,
                                            "argument": {
                                              "type": "Identifier",
                                              "start": 1859,
                                              "end": 1864,
                                              "loc": {
                                                "start": {
                                                  "line": 67,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 67,
                                                  "column": 63
                                                }
                                              },
                                              "name": "count"
                                            }
                                          }
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 1881,
                                  "end": 1951,
                                  "loc": {
                                    "start": {
                                      "line": 68,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 68,
                                      "column": 82
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 1881,
                                    "end": 1950,
                                    "loc": {
                                      "start": {
                                        "line": 68,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 68,
                                        "column": 81
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 1881,
                                      "end": 1910,
                                      "loc": {
                                        "start": {
                                          "line": 68,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 68,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1881,
                                        "end": 1905,
                                        "loc": {
                                          "start": {
                                            "line": 68,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 68,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 1881,
                                          "end": 1897,
                                          "loc": {
                                            "start": {
                                              "line": 68,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 68,
                                              "column": 28
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 1881,
                                            "end": 1885,
                                            "loc": {
                                              "start": {
                                                "line": 68,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 68,
                                                "column": 16
                                              }
                                            },
                                            "name": "view"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1886,
                                            "end": 1897,
                                            "loc": {
                                              "start": {
                                                "line": 68,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 68,
                                                "column": 28
                                              }
                                            },
                                            "name": "interaction"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1898,
                                          "end": 1905,
                                          "loc": {
                                            "start": {
                                              "line": 68,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 68,
                                              "column": 36
                                            }
                                          },
                                          "name": "targets"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1906,
                                        "end": 1910,
                                        "loc": {
                                          "start": {
                                            "line": 68,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 68,
                                            "column": 41
                                          }
                                        },
                                        "name": "sort"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 1912,
                                        "end": 1949,
                                        "loc": {
                                          "start": {
                                            "line": 68,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 68,
                                            "column": 80
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": true,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 1913,
                                            "end": 1914,
                                            "loc": {
                                              "start": {
                                                "line": 68,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 68,
                                                "column": 45
                                              }
                                            },
                                            "name": "a"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 1916,
                                            "end": 1917,
                                            "loc": {
                                              "start": {
                                                "line": 68,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 68,
                                                "column": 48
                                              }
                                            },
                                            "name": "b"
                                          }
                                        ],
                                        "body": {
                                          "type": "BinaryExpression",
                                          "start": 1922,
                                          "end": 1949,
                                          "loc": {
                                            "start": {
                                              "line": 68,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 68,
                                              "column": 80
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 1922,
                                            "end": 1934,
                                            "loc": {
                                              "start": {
                                                "line": 68,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 68,
                                                "column": 65
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1922,
                                              "end": 1923,
                                              "loc": {
                                                "start": {
                                                  "line": 68,
                                                  "column": 53
                                                },
                                                "end": {
                                                  "line": 68,
                                                  "column": 54
                                                }
                                              },
                                              "name": "a"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1924,
                                              "end": 1934,
                                              "loc": {
                                                "start": {
                                                  "line": 68,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 68,
                                                  "column": 65
                                                }
                                              },
                                              "name": "depthIndex"
                                            },
                                            "computed": false
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 1937,
                                            "end": 1949,
                                            "loc": {
                                              "start": {
                                                "line": 68,
                                                "column": 68
                                              },
                                              "end": {
                                                "line": 68,
                                                "column": 80
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1937,
                                              "end": 1938,
                                              "loc": {
                                                "start": {
                                                  "line": 68,
                                                  "column": 68
                                                },
                                                "end": {
                                                  "line": 68,
                                                  "column": 69
                                                }
                                              },
                                              "name": "b"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1939,
                                              "end": 1949,
                                              "loc": {
                                                "start": {
                                                  "line": 68,
                                                  "column": 70
                                                },
                                                "end": {
                                                  "line": 68,
                                                  "column": 80
                                                }
                                              },
                                              "name": "depthIndex"
                                            },
                                            "computed": false
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      }
                    }
                  ]
                },
                "trailingComments": [
                  {
                    "type": "CommentLine",
                    "value": " _active controls if the interaction layer considers the object, depending if interaction-related events are registered",
                    "start": 1975,
                    "end": 2096,
                    "loc": {
                      "start": {
                        "line": 72,
                        "column": 4
                      },
                      "end": {
                        "line": 72,
                        "column": 125
                      }
                    },
                    "range": [
                      1975,
                      2096
                    ]
                  }
                ]
              },
              {
                "type": "ExpressionStatement",
                "start": 2101,
                "end": 2248,
                "loc": {
                  "start": {
                    "line": 73,
                    "column": 4
                  },
                  "end": {
                    "line": 74,
                    "column": 123
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 2101,
                  "end": 2247,
                  "loc": {
                    "start": {
                      "line": 73,
                      "column": 4
                    },
                    "end": {
                      "line": 74,
                      "column": 122
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 2101,
                    "end": 2113,
                    "loc": {
                      "start": {
                        "line": 73,
                        "column": 4
                      },
                      "end": {
                        "line": 73,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 2101,
                      "end": 2105,
                      "loc": {
                        "start": {
                          "line": 73,
                          "column": 4
                        },
                        "end": {
                          "line": 73,
                          "column": 8
                        }
                      },
                      "leadingComments": null
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 2106,
                      "end": 2113,
                      "loc": {
                        "start": {
                          "line": 73,
                          "column": 9
                        },
                        "end": {
                          "line": 73,
                          "column": 16
                        }
                      },
                      "name": "inspect"
                    },
                    "computed": false,
                    "leadingComments": null
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 2114,
                      "end": 2246,
                      "loc": {
                        "start": {
                          "line": 73,
                          "column": 17
                        },
                        "end": {
                          "line": 74,
                          "column": 121
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": true,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 2114,
                          "end": 2121,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 17
                            },
                            "end": {
                              "line": 73,
                              "column": 24
                            }
                          },
                          "name": "context"
                        }
                      ],
                      "body": {
                        "type": "AssignmentExpression",
                        "start": 2133,
                        "end": 2246,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 8
                          },
                          "end": {
                            "line": 74,
                            "column": 121
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2133,
                          "end": 2157,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 8
                            },
                            "end": {
                              "line": 74,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2133,
                            "end": 2149,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 8
                              },
                              "end": {
                                "line": 74,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 2133,
                              "end": 2137,
                              "loc": {
                                "start": {
                                  "line": 74,
                                  "column": 8
                                },
                                "end": {
                                  "line": 74,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2138,
                              "end": 2149,
                              "loc": {
                                "start": {
                                  "line": 74,
                                  "column": 13
                                },
                                "end": {
                                  "line": 74,
                                  "column": 24
                                }
                              },
                              "name": "interaction"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2150,
                            "end": 2157,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 25
                              },
                              "end": {
                                "line": 74,
                                "column": 32
                              }
                            },
                            "name": "_active"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "UnaryExpression",
                          "start": 2160,
                          "end": 2246,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 35
                            },
                            "end": {
                              "line": 74,
                              "column": 121
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 2161,
                            "end": 2246,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 36
                              },
                              "end": {
                                "line": 74,
                                "column": 121
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "CallExpression",
                              "start": 2162,
                              "end": 2246,
                              "loc": {
                                "start": {
                                  "line": 74,
                                  "column": 37
                                },
                                "end": {
                                  "line": 74,
                                  "column": 121
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 2162,
                                "end": 2195,
                                "loc": {
                                  "start": {
                                    "line": 74,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 74,
                                    "column": 70
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 2162,
                                  "end": 2190,
                                  "loc": {
                                    "start": {
                                      "line": 74,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 74,
                                      "column": 65
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 2162,
                                    "end": 2173,
                                    "loc": {
                                      "start": {
                                        "line": 74,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 74,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2162,
                                      "end": 2168,
                                      "loc": {
                                        "start": {
                                          "line": 74,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 74,
                                          "column": 43
                                        }
                                      },
                                      "name": "Object"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2169,
                                      "end": 2173,
                                      "loc": {
                                        "start": {
                                          "line": 74,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 74,
                                          "column": 48
                                        }
                                      },
                                      "name": "keys"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 2174,
                                      "end": 2189,
                                      "loc": {
                                        "start": {
                                          "line": 74,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 74,
                                          "column": 64
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 2174,
                                        "end": 2178,
                                        "loc": {
                                          "start": {
                                            "line": 74,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 74,
                                            "column": 53
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2179,
                                        "end": 2189,
                                        "loc": {
                                          "start": {
                                            "line": 74,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 74,
                                            "column": 64
                                          }
                                        },
                                        "name": "_callbacks"
                                      },
                                      "computed": false
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2191,
                                  "end": 2195,
                                  "loc": {
                                    "start": {
                                      "line": 74,
                                      "column": 66
                                    },
                                    "end": {
                                      "line": 74,
                                      "column": 70
                                    }
                                  },
                                  "name": "find"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 2196,
                                  "end": 2245,
                                  "loc": {
                                    "start": {
                                      "line": 74,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 74,
                                      "column": 120
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 2196,
                                      "end": 2200,
                                      "loc": {
                                        "start": {
                                          "line": 74,
                                          "column": 71
                                        },
                                        "end": {
                                          "line": 74,
                                          "column": 75
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ],
                                  "body": {
                                    "type": "BinaryExpression",
                                    "start": 2204,
                                    "end": 2245,
                                    "loc": {
                                      "start": {
                                        "line": 74,
                                        "column": 79
                                      },
                                      "end": {
                                        "line": 74,
                                        "column": 120
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 2204,
                                      "end": 2208,
                                      "loc": {
                                        "start": {
                                          "line": 74,
                                          "column": 79
                                        },
                                        "end": {
                                          "line": 74,
                                          "column": 83
                                        }
                                      },
                                      "name": "item"
                                    },
                                    "operator": "in",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 2212,
                                      "end": 2245,
                                      "loc": {
                                        "start": {
                                          "line": 74,
                                          "column": 87
                                        },
                                        "end": {
                                          "line": 74,
                                          "column": 120
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 2212,
                                        "end": 2233,
                                        "loc": {
                                          "start": {
                                            "line": 74,
                                            "column": 87
                                          },
                                          "end": {
                                            "line": 74,
                                            "column": 108
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 2212,
                                          "end": 2226,
                                          "loc": {
                                            "start": {
                                              "line": 74,
                                              "column": 87
                                            },
                                            "end": {
                                              "line": 74,
                                              "column": 101
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 2212,
                                            "end": 2217,
                                            "loc": {
                                              "start": {
                                                "line": 74,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 74,
                                                "column": 92
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2218,
                                            "end": 2226,
                                            "loc": {
                                              "start": {
                                                "line": 74,
                                                "column": 93
                                              },
                                              "end": {
                                                "line": 74,
                                                "column": 101
                                              }
                                            },
                                            "name": "Object3D"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 2227,
                                          "end": 2233,
                                          "loc": {
                                            "start": {
                                              "line": 74,
                                              "column": 102
                                            },
                                            "end": {
                                              "line": 74,
                                              "column": 108
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2234,
                                        "end": 2245,
                                        "loc": {
                                          "start": {
                                            "line": 74,
                                            "column": 109
                                          },
                                          "end": {
                                            "line": 74,
                                            "column": 120
                                          }
                                        },
                                        "name": "Interaction"
                                      },
                                      "computed": false
                                    }
                                  }
                                }
                              ]
                            }
                          }
                        }
                      }
                    }
                  ],
                  "leadingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentLine",
                    "value": " _active controls if the interaction layer considers the object, depending if interaction-related events are registered",
                    "start": 1975,
                    "end": 2096,
                    "loc": {
                      "start": {
                        "line": 72,
                        "column": 4
                      },
                      "end": {
                        "line": 72,
                        "column": 125
                      }
                    },
                    "range": [
                      1975,
                      2096
                    ]
                  }
                ]
              },
              {
                "type": "ReturnStatement",
                "start": 2254,
                "end": 2266,
                "loc": {
                  "start": {
                    "line": 76,
                    "column": 4
                  },
                  "end": {
                    "line": 76,
                    "column": 16
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 2261,
                  "end": 2265,
                  "loc": {
                    "start": {
                      "line": 76,
                      "column": 11
                    },
                    "end": {
                      "line": 76,
                      "column": 15
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 2270,
      "end": 2827,
      "loc": {
        "start": {
          "line": 79,
          "column": 0
        },
        "end": {
          "line": 93,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 2270,
        "end": 2827,
        "loc": {
          "start": {
            "line": 79,
            "column": 0
          },
          "end": {
            "line": 93,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 2270,
          "end": 2312,
          "loc": {
            "start": {
              "line": 79,
              "column": 0
            },
            "end": {
              "line": 79,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 2270,
            "end": 2294,
            "loc": {
              "start": {
                "line": 79,
                "column": 0
              },
              "end": {
                "line": 79,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 2270,
              "end": 2284,
              "loc": {
                "start": {
                  "line": 79,
                  "column": 0
                },
                "end": {
                  "line": 79,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 2270,
                "end": 2275,
                "loc": {
                  "start": {
                    "line": 79,
                    "column": 0
                  },
                  "end": {
                    "line": 79,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 2276,
                "end": 2284,
                "loc": {
                  "start": {
                    "line": 79,
                    "column": 6
                  },
                  "end": {
                    "line": 79,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 2285,
              "end": 2294,
              "loc": {
                "start": {
                  "line": 79,
                  "column": 15
                },
                "end": {
                  "line": 79,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 2295,
            "end": 2312,
            "loc": {
              "start": {
                "line": 79,
                "column": 25
              },
              "end": {
                "line": 79,
                "column": 42
              }
            },
            "name": "removeInteraction"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 2315,
          "end": 2827,
          "loc": {
            "start": {
              "line": 79,
              "column": 45
            },
            "end": {
              "line": 93,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 2295,
            "end": 2312,
            "loc": {
              "start": {
                "line": 79,
                "column": 25
              },
              "end": {
                "line": 79,
                "column": 42
              }
            },
            "name": "removeInteraction"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 2326,
            "end": 2827,
            "loc": {
              "start": {
                "line": 79,
                "column": 56
              },
              "end": {
                "line": 93,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 2332,
                "end": 2825,
                "loc": {
                  "start": {
                    "line": 80,
                    "column": 4
                  },
                  "end": {
                    "line": 92,
                    "column": 5
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 2336,
                  "end": 2365,
                  "loc": {
                    "start": {
                      "line": 80,
                      "column": 8
                    },
                    "end": {
                      "line": 80,
                      "column": 37
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 2336,
                    "end": 2345,
                    "loc": {
                      "start": {
                        "line": 80,
                        "column": 8
                      },
                      "end": {
                        "line": 80,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 2336,
                      "end": 2340,
                      "loc": {
                        "start": {
                          "line": 80,
                          "column": 8
                        },
                        "end": {
                          "line": 80,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 2341,
                      "end": 2345,
                      "loc": {
                        "start": {
                          "line": 80,
                          "column": 13
                        },
                        "end": {
                          "line": 80,
                          "column": 17
                        }
                      },
                      "name": "view"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "MemberExpression",
                    "start": 2349,
                    "end": 2365,
                    "loc": {
                      "start": {
                        "line": 80,
                        "column": 21
                      },
                      "end": {
                        "line": 80,
                        "column": 37
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 2349,
                      "end": 2353,
                      "loc": {
                        "start": {
                          "line": 80,
                          "column": 21
                        },
                        "end": {
                          "line": 80,
                          "column": 25
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 2354,
                      "end": 2365,
                      "loc": {
                        "start": {
                          "line": 80,
                          "column": 26
                        },
                        "end": {
                          "line": 80,
                          "column": 37
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 2367,
                  "end": 2825,
                  "loc": {
                    "start": {
                      "line": 80,
                      "column": 39
                    },
                    "end": {
                      "line": 92,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 2377,
                      "end": 2406,
                      "loc": {
                        "start": {
                          "line": 81,
                          "column": 8
                        },
                        "end": {
                          "line": 81,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 2377,
                        "end": 2405,
                        "loc": {
                          "start": {
                            "line": 81,
                            "column": 8
                          },
                          "end": {
                            "line": 81,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2377,
                          "end": 2393,
                          "loc": {
                            "start": {
                              "line": 81,
                              "column": 8
                            },
                            "end": {
                              "line": 81,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2377,
                            "end": 2381,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 8
                              },
                              "end": {
                                "line": 81,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2382,
                            "end": 2393,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 13
                              },
                              "end": {
                                "line": 81,
                                "column": 24
                              }
                            },
                            "name": "interaction"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 2396,
                          "end": 2405,
                          "loc": {
                            "start": {
                              "line": 81,
                              "column": 27
                            },
                            "end": {
                              "line": 81,
                              "column": 36
                            }
                          },
                          "name": "undefined"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2415,
                      "end": 2456,
                      "loc": {
                        "start": {
                          "line": 82,
                          "column": 8
                        },
                        "end": {
                          "line": 82,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2415,
                        "end": 2455,
                        "loc": {
                          "start": {
                            "line": 82,
                            "column": 8
                          },
                          "end": {
                            "line": 82,
                            "column": 48
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2415,
                          "end": 2449,
                          "loc": {
                            "start": {
                              "line": 82,
                              "column": 8
                            },
                            "end": {
                              "line": 82,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2415,
                            "end": 2436,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 8
                              },
                              "end": {
                                "line": 82,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 2415,
                              "end": 2424,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 8
                                },
                                "end": {
                                  "line": 82,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2415,
                                "end": 2419,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2420,
                                "end": 2424,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 17
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2425,
                              "end": 2436,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 18
                                },
                                "end": {
                                  "line": 82,
                                  "column": 29
                                }
                              },
                              "name": "interaction"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2437,
                            "end": 2449,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 30
                              },
                              "end": {
                                "line": 82,
                                "column": 42
                              }
                            },
                            "name": "removeTarget"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 2450,
                            "end": 2454,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 43
                              },
                              "end": {
                                "line": 82,
                                "column": 47
                              }
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2465,
                      "end": 2489,
                      "loc": {
                        "start": {
                          "line": 83,
                          "column": 8
                        },
                        "end": {
                          "line": 83,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2465,
                        "end": 2488,
                        "loc": {
                          "start": {
                            "line": 83,
                            "column": 8
                          },
                          "end": {
                            "line": 83,
                            "column": 31
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2465,
                          "end": 2486,
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 8
                            },
                            "end": {
                              "line": 83,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2465,
                            "end": 2469,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 8
                              },
                              "end": {
                                "line": 83,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2470,
                            "end": 2486,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 13
                              },
                              "end": {
                                "line": 83,
                                "column": 29
                              }
                            },
                            "name": "removeInspectors"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2498,
                      "end": 2819,
                      "loc": {
                        "start": {
                          "line": 84,
                          "column": 8
                        },
                        "end": {
                          "line": 91,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2498,
                        "end": 2818,
                        "loc": {
                          "start": {
                            "line": 84,
                            "column": 8
                          },
                          "end": {
                            "line": 91,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2498,
                          "end": 2517,
                          "loc": {
                            "start": {
                              "line": 84,
                              "column": 8
                            },
                            "end": {
                              "line": 84,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2498,
                            "end": 2502,
                            "loc": {
                              "start": {
                                "line": 84,
                                "column": 8
                              },
                              "end": {
                                "line": 84,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2503,
                            "end": 2517,
                            "loc": {
                              "start": {
                                "line": 84,
                                "column": 13
                              },
                              "end": {
                                "line": 84,
                                "column": 27
                              }
                            },
                            "name": "removeListener"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 2518,
                            "end": 2817,
                            "loc": {
                              "start": {
                                "line": 84,
                                "column": 28
                              },
                              "end": {
                                "line": 91,
                                "column": 9
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 2532,
                                "end": 2566,
                                "loc": {
                                  "start": {
                                    "line": 85,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 85,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2532,
                                  "end": 2558,
                                  "loc": {
                                    "start": {
                                      "line": 85,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 85,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2532,
                                    "end": 2546,
                                    "loc": {
                                      "start": {
                                        "line": 85,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 85,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2532,
                                      "end": 2539,
                                      "loc": {
                                        "start": {
                                          "line": 85,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 85,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2540,
                                      "end": 2546,
                                      "loc": {
                                        "start": {
                                          "line": 85,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 85,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2547,
                                    "end": 2558,
                                    "loc": {
                                      "start": {
                                        "line": 85,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 85,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2559,
                                  "end": 2566,
                                  "loc": {
                                    "start": {
                                      "line": 85,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 85,
                                      "column": 46
                                    }
                                  },
                                  "name": "Clicked"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2580,
                                "end": 2613,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2580,
                                  "end": 2606,
                                  "loc": {
                                    "start": {
                                      "line": 86,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 86,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2580,
                                    "end": 2594,
                                    "loc": {
                                      "start": {
                                        "line": 86,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 86,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2580,
                                      "end": 2587,
                                      "loc": {
                                        "start": {
                                          "line": 86,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 86,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2588,
                                      "end": 2594,
                                      "loc": {
                                        "start": {
                                          "line": 86,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 86,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2595,
                                    "end": 2606,
                                    "loc": {
                                      "start": {
                                        "line": 86,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 86,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2607,
                                  "end": 2613,
                                  "loc": {
                                    "start": {
                                      "line": 86,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 86,
                                      "column": 45
                                    }
                                  },
                                  "name": "Picked"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2627,
                                "end": 2661,
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2627,
                                  "end": 2653,
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2627,
                                    "end": 2641,
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2627,
                                      "end": 2634,
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2635,
                                      "end": 2641,
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2642,
                                    "end": 2653,
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2654,
                                  "end": 2661,
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 46
                                    }
                                  },
                                  "name": "Dropped"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2675,
                                "end": 2709,
                                "loc": {
                                  "start": {
                                    "line": 88,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2675,
                                  "end": 2701,
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2675,
                                    "end": 2689,
                                    "loc": {
                                      "start": {
                                        "line": 88,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 88,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2675,
                                      "end": 2682,
                                      "loc": {
                                        "start": {
                                          "line": 88,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 88,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2683,
                                      "end": 2689,
                                      "loc": {
                                        "start": {
                                          "line": 88,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 88,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2690,
                                    "end": 2701,
                                    "loc": {
                                      "start": {
                                        "line": 88,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 88,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2702,
                                  "end": 2709,
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 46
                                    }
                                  },
                                  "name": "Dragged"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2723,
                                "end": 2757,
                                "loc": {
                                  "start": {
                                    "line": 89,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 89,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2723,
                                  "end": 2749,
                                  "loc": {
                                    "start": {
                                      "line": 89,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2723,
                                    "end": 2737,
                                    "loc": {
                                      "start": {
                                        "line": 89,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 89,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2723,
                                      "end": 2730,
                                      "loc": {
                                        "start": {
                                          "line": 89,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 89,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2731,
                                      "end": 2737,
                                      "loc": {
                                        "start": {
                                          "line": 89,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 89,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2738,
                                    "end": 2749,
                                    "loc": {
                                      "start": {
                                        "line": 89,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 89,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2750,
                                  "end": 2757,
                                  "loc": {
                                    "start": {
                                      "line": 89,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 46
                                    }
                                  },
                                  "name": "Hovered"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2771,
                                "end": 2807,
                                "loc": {
                                  "start": {
                                    "line": 90,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 90,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2771,
                                  "end": 2797,
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2771,
                                    "end": 2785,
                                    "loc": {
                                      "start": {
                                        "line": 90,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 90,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2771,
                                      "end": 2778,
                                      "loc": {
                                        "start": {
                                          "line": 90,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 90,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2779,
                                      "end": 2785,
                                      "loc": {
                                        "start": {
                                          "line": 90,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 90,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2786,
                                    "end": 2797,
                                    "loc": {
                                      "start": {
                                        "line": 90,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 90,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2798,
                                  "end": 2807,
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 48
                                    }
                                  },
                                  "name": "Unhovered"
                                },
                                "computed": false
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 2829,
      "end": 3052,
      "loc": {
        "start": {
          "line": 95,
          "column": 0
        },
        "end": {
          "line": 99,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 2829,
        "end": 3052,
        "loc": {
          "start": {
            "line": 95,
            "column": 0
          },
          "end": {
            "line": 99,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 2829,
          "end": 2863,
          "loc": {
            "start": {
              "line": 95,
              "column": 0
            },
            "end": {
              "line": 95,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 2829,
            "end": 2853,
            "loc": {
              "start": {
                "line": 95,
                "column": 0
              },
              "end": {
                "line": 95,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 2829,
              "end": 2843,
              "loc": {
                "start": {
                  "line": 95,
                  "column": 0
                },
                "end": {
                  "line": 95,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 2829,
                "end": 2834,
                "loc": {
                  "start": {
                    "line": 95,
                    "column": 0
                  },
                  "end": {
                    "line": 95,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 2835,
                "end": 2843,
                "loc": {
                  "start": {
                    "line": 95,
                    "column": 6
                  },
                  "end": {
                    "line": 95,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 2844,
              "end": 2853,
              "loc": {
                "start": {
                  "line": 95,
                  "column": 15
                },
                "end": {
                  "line": 95,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 2854,
            "end": 2863,
            "loc": {
              "start": {
                "line": 95,
                "column": 25
              },
              "end": {
                "line": 95,
                "column": 34
              }
            },
            "name": "viewFound"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 2866,
          "end": 3052,
          "loc": {
            "start": {
              "line": 95,
              "column": 37
            },
            "end": {
              "line": 99,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 2854,
            "end": 2863,
            "loc": {
              "start": {
                "line": 95,
                "column": 25
              },
              "end": {
                "line": 95,
                "column": 34
              }
            },
            "name": "viewFound"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 2877,
            "end": 3052,
            "loc": {
              "start": {
                "line": 95,
                "column": 48
              },
              "end": {
                "line": 99,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 2883,
                "end": 2900,
                "loc": {
                  "start": {
                    "line": 96,
                    "column": 4
                  },
                  "end": {
                    "line": 96,
                    "column": 21
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 2887,
                    "end": 2899,
                    "loc": {
                      "start": {
                        "line": 96,
                        "column": 8
                      },
                      "end": {
                        "line": 96,
                        "column": 20
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 2887,
                      "end": 2892,
                      "loc": {
                        "start": {
                          "line": 96,
                          "column": 8
                        },
                        "end": {
                          "line": 96,
                          "column": 13
                        }
                      },
                      "name": "scope"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 2895,
                      "end": 2899,
                      "loc": {
                        "start": {
                          "line": 96,
                          "column": 16
                        },
                        "end": {
                          "line": 96,
                          "column": 20
                        }
                      }
                    }
                  }
                ],
                "kind": "let"
              },
              {
                "type": "ReturnStatement",
                "start": 2905,
                "end": 3050,
                "loc": {
                  "start": {
                    "line": 97,
                    "column": 4
                  },
                  "end": {
                    "line": 98,
                    "column": 95
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 2912,
                  "end": 3049,
                  "loc": {
                    "start": {
                      "line": 97,
                      "column": 11
                    },
                    "end": {
                      "line": 98,
                      "column": 94
                    }
                  },
                  "test": {
                    "type": "UnaryExpression",
                    "start": 2912,
                    "end": 2923,
                    "loc": {
                      "start": {
                        "line": 97,
                        "column": 11
                      },
                      "end": {
                        "line": 97,
                        "column": 22
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 2913,
                      "end": 2923,
                      "loc": {
                        "start": {
                          "line": 97,
                          "column": 12
                        },
                        "end": {
                          "line": 97,
                          "column": 22
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 2914,
                        "end": 2923,
                        "loc": {
                          "start": {
                            "line": 97,
                            "column": 13
                          },
                          "end": {
                            "line": 97,
                            "column": 22
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 2914,
                          "end": 2918,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 13
                            },
                            "end": {
                              "line": 97,
                              "column": 17
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2919,
                          "end": 2923,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 18
                            },
                            "end": {
                              "line": 97,
                              "column": 22
                            }
                          },
                          "name": "view"
                        },
                        "computed": false
                      }
                    }
                  },
                  "consequent": {
                    "type": "CallExpression",
                    "start": 2926,
                    "end": 2952,
                    "loc": {
                      "start": {
                        "line": 97,
                        "column": 25
                      },
                      "end": {
                        "line": 97,
                        "column": 51
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 2926,
                      "end": 2941,
                      "loc": {
                        "start": {
                          "line": 97,
                          "column": 25
                        },
                        "end": {
                          "line": 97,
                          "column": 40
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 2926,
                        "end": 2933,
                        "loc": {
                          "start": {
                            "line": 97,
                            "column": 25
                          },
                          "end": {
                            "line": 97,
                            "column": 32
                          }
                        },
                        "name": "Promise"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 2934,
                        "end": 2941,
                        "loc": {
                          "start": {
                            "line": 97,
                            "column": 33
                          },
                          "end": {
                            "line": 97,
                            "column": 40
                          }
                        },
                        "name": "resolve"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "MemberExpression",
                        "start": 2942,
                        "end": 2951,
                        "loc": {
                          "start": {
                            "line": 97,
                            "column": 41
                          },
                          "end": {
                            "line": 97,
                            "column": 50
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 2942,
                          "end": 2946,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 41
                            },
                            "end": {
                              "line": 97,
                              "column": 45
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2947,
                          "end": 2951,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 46
                            },
                            "end": {
                              "line": 97,
                              "column": 50
                            }
                          },
                          "name": "view"
                        },
                        "computed": false
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 2963,
                    "end": 3049,
                    "loc": {
                      "start": {
                        "line": 98,
                        "column": 8
                      },
                      "end": {
                        "line": 98,
                        "column": 94
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 2967,
                      "end": 2974,
                      "loc": {
                        "start": {
                          "line": 98,
                          "column": 12
                        },
                        "end": {
                          "line": 98,
                          "column": 19
                        }
                      },
                      "name": "Promise"
                    },
                    "arguments": [
                      {
                        "type": "ArrowFunctionExpression",
                        "start": 2975,
                        "end": 3048,
                        "loc": {
                          "start": {
                            "line": 98,
                            "column": 20
                          },
                          "end": {
                            "line": 98,
                            "column": 93
                          }
                        },
                        "id": null,
                        "generator": false,
                        "expression": true,
                        "async": false,
                        "params": [
                          {
                            "type": "Identifier",
                            "start": 2975,
                            "end": 2982,
                            "loc": {
                              "start": {
                                "line": 98,
                                "column": 20
                              },
                              "end": {
                                "line": 98,
                                "column": 27
                              }
                            },
                            "name": "resolve"
                          }
                        ],
                        "body": {
                          "type": "CallExpression",
                          "start": 2986,
                          "end": 3048,
                          "loc": {
                            "start": {
                              "line": 98,
                              "column": 31
                            },
                            "end": {
                              "line": 98,
                              "column": 93
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 2986,
                            "end": 2996,
                            "loc": {
                              "start": {
                                "line": 98,
                                "column": 31
                              },
                              "end": {
                                "line": 98,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 2986,
                              "end": 2991,
                              "loc": {
                                "start": {
                                  "line": 98,
                                  "column": 31
                                },
                                "end": {
                                  "line": 98,
                                  "column": 36
                                }
                              },
                              "name": "scope"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2992,
                              "end": 2996,
                              "loc": {
                                "start": {
                                  "line": 98,
                                  "column": 37
                                },
                                "end": {
                                  "line": 98,
                                  "column": 41
                                }
                              },
                              "name": "once"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 2997,
                              "end": 3038,
                              "loc": {
                                "start": {
                                  "line": 98,
                                  "column": 42
                                },
                                "end": {
                                  "line": 98,
                                  "column": 83
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 2997,
                                "end": 3028,
                                "loc": {
                                  "start": {
                                    "line": 98,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 98,
                                    "column": 73
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2997,
                                  "end": 3018,
                                  "loc": {
                                    "start": {
                                      "line": 98,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 98,
                                      "column": 63
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2997,
                                    "end": 3011,
                                    "loc": {
                                      "start": {
                                        "line": 98,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 98,
                                        "column": 56
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2997,
                                      "end": 3002,
                                      "loc": {
                                        "start": {
                                          "line": 98,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 98,
                                          "column": 47
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3003,
                                      "end": 3011,
                                      "loc": {
                                        "start": {
                                          "line": 98,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 98,
                                          "column": 56
                                        }
                                      },
                                      "name": "Object3D"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3012,
                                    "end": 3018,
                                    "loc": {
                                      "start": {
                                        "line": 98,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 98,
                                        "column": 63
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3019,
                                  "end": 3028,
                                  "loc": {
                                    "start": {
                                      "line": 98,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 98,
                                      "column": 73
                                    }
                                  },
                                  "name": "Lifecycle"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3029,
                                "end": 3038,
                                "loc": {
                                  "start": {
                                    "line": 98,
                                    "column": 74
                                  },
                                  "end": {
                                    "line": 98,
                                    "column": 83
                                  }
                                },
                                "name": "ViewFound"
                              },
                              "computed": false
                            },
                            {
                              "type": "Identifier",
                              "start": 3040,
                              "end": 3047,
                              "loc": {
                                "start": {
                                  "line": 98,
                                  "column": 85
                                },
                                "end": {
                                  "line": 98,
                                  "column": 92
                                }
                              },
                              "name": "resolve"
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 3054,
      "end": 3764,
      "loc": {
        "start": {
          "line": 101,
          "column": 0
        },
        "end": {
          "line": 125,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 3054,
        "end": 3764,
        "loc": {
          "start": {
            "line": 101,
            "column": 0
          },
          "end": {
            "line": 125,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 3054,
          "end": 3096,
          "loc": {
            "start": {
              "line": 101,
              "column": 0
            },
            "end": {
              "line": 101,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 3054,
            "end": 3078,
            "loc": {
              "start": {
                "line": 101,
                "column": 0
              },
              "end": {
                "line": 101,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 3054,
              "end": 3068,
              "loc": {
                "start": {
                  "line": 101,
                  "column": 0
                },
                "end": {
                  "line": 101,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 3054,
                "end": 3059,
                "loc": {
                  "start": {
                    "line": 101,
                    "column": 0
                  },
                  "end": {
                    "line": 101,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 3060,
                "end": 3068,
                "loc": {
                  "start": {
                    "line": 101,
                    "column": 6
                  },
                  "end": {
                    "line": 101,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 3069,
              "end": 3078,
              "loc": {
                "start": {
                  "line": 101,
                  "column": 15
                },
                "end": {
                  "line": 101,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 3079,
            "end": 3096,
            "loc": {
              "start": {
                "line": 101,
                "column": 25
              },
              "end": {
                "line": 101,
                "column": 42
              }
            },
            "name": "_destroyRecursive"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 3099,
          "end": 3764,
          "loc": {
            "start": {
              "line": 101,
              "column": 45
            },
            "end": {
              "line": 125,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 3079,
            "end": 3096,
            "loc": {
              "start": {
                "line": 101,
                "column": 25
              },
              "end": {
                "line": 101,
                "column": 42
              }
            },
            "name": "_destroyRecursive"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 3108,
              "end": 3115,
              "loc": {
                "start": {
                  "line": 101,
                  "column": 54
                },
                "end": {
                  "line": 101,
                  "column": 61
                }
              },
              "name": "options"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 3117,
            "end": 3764,
            "loc": {
              "start": {
                "line": 101,
                "column": 63
              },
              "end": {
                "line": 125,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 3123,
                "end": 3176,
                "loc": {
                  "start": {
                    "line": 102,
                    "column": 4
                  },
                  "end": {
                    "line": 103,
                    "column": 32
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3127,
                  "end": 3142,
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 8
                    },
                    "end": {
                      "line": 102,
                      "column": 23
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "UnaryExpression",
                    "start": 3128,
                    "end": 3142,
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 9
                      },
                      "end": {
                        "line": 102,
                        "column": 23
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 3129,
                      "end": 3142,
                      "loc": {
                        "start": {
                          "line": 102,
                          "column": 10
                        },
                        "end": {
                          "line": 102,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 3129,
                        "end": 3133,
                        "loc": {
                          "start": {
                            "line": 102,
                            "column": 10
                          },
                          "end": {
                            "line": 102,
                            "column": 14
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3134,
                        "end": 3142,
                        "loc": {
                          "start": {
                            "line": 102,
                            "column": 15
                          },
                          "end": {
                            "line": 102,
                            "column": 23
                          }
                        },
                        "name": "geometry"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 3152,
                  "end": 3176,
                  "loc": {
                    "start": {
                      "line": 103,
                      "column": 8
                    },
                    "end": {
                      "line": 103,
                      "column": 32
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 3152,
                    "end": 3175,
                    "loc": {
                      "start": {
                        "line": 103,
                        "column": 8
                      },
                      "end": {
                        "line": 103,
                        "column": 31
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 3152,
                      "end": 3173,
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 8
                        },
                        "end": {
                          "line": 103,
                          "column": 29
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 3152,
                        "end": 3165,
                        "loc": {
                          "start": {
                            "line": 103,
                            "column": 8
                          },
                          "end": {
                            "line": 103,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 3152,
                          "end": 3156,
                          "loc": {
                            "start": {
                              "line": 103,
                              "column": 8
                            },
                            "end": {
                              "line": 103,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3157,
                          "end": 3165,
                          "loc": {
                            "start": {
                              "line": 103,
                              "column": 13
                            },
                            "end": {
                              "line": 103,
                              "column": 21
                            }
                          },
                          "name": "geometry"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3166,
                        "end": 3173,
                        "loc": {
                          "start": {
                            "line": 103,
                            "column": 22
                          },
                          "end": {
                            "line": 103,
                            "column": 29
                          }
                        },
                        "name": "dispose"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 3182,
                "end": 3235,
                "loc": {
                  "start": {
                    "line": 105,
                    "column": 4
                  },
                  "end": {
                    "line": 106,
                    "column": 32
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3186,
                  "end": 3201,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 8
                    },
                    "end": {
                      "line": 105,
                      "column": 23
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "UnaryExpression",
                    "start": 3187,
                    "end": 3201,
                    "loc": {
                      "start": {
                        "line": 105,
                        "column": 9
                      },
                      "end": {
                        "line": 105,
                        "column": 23
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 3188,
                      "end": 3201,
                      "loc": {
                        "start": {
                          "line": 105,
                          "column": 10
                        },
                        "end": {
                          "line": 105,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 3188,
                        "end": 3192,
                        "loc": {
                          "start": {
                            "line": 105,
                            "column": 10
                          },
                          "end": {
                            "line": 105,
                            "column": 14
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3193,
                        "end": 3201,
                        "loc": {
                          "start": {
                            "line": 105,
                            "column": 15
                          },
                          "end": {
                            "line": 105,
                            "column": 23
                          }
                        },
                        "name": "material"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 3211,
                  "end": 3235,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 8
                    },
                    "end": {
                      "line": 106,
                      "column": 32
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 3211,
                    "end": 3234,
                    "loc": {
                      "start": {
                        "line": 106,
                        "column": 8
                      },
                      "end": {
                        "line": 106,
                        "column": 31
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 3211,
                      "end": 3232,
                      "loc": {
                        "start": {
                          "line": 106,
                          "column": 8
                        },
                        "end": {
                          "line": 106,
                          "column": 29
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 3211,
                        "end": 3224,
                        "loc": {
                          "start": {
                            "line": 106,
                            "column": 8
                          },
                          "end": {
                            "line": 106,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 3211,
                          "end": 3215,
                          "loc": {
                            "start": {
                              "line": 106,
                              "column": 8
                            },
                            "end": {
                              "line": 106,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3216,
                          "end": 3224,
                          "loc": {
                            "start": {
                              "line": 106,
                              "column": 13
                            },
                            "end": {
                              "line": 106,
                              "column": 21
                            }
                          },
                          "name": "material"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3225,
                        "end": 3232,
                        "loc": {
                          "start": {
                            "line": 106,
                            "column": 22
                          },
                          "end": {
                            "line": 106,
                            "column": 29
                          }
                        },
                        "name": "dispose"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 3241,
                "end": 3475,
                "loc": {
                  "start": {
                    "line": 108,
                    "column": 4
                  },
                  "end": {
                    "line": 114,
                    "column": 5
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3245,
                  "end": 3261,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 8
                    },
                    "end": {
                      "line": 108,
                      "column": 24
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "UnaryExpression",
                    "start": 3246,
                    "end": 3261,
                    "loc": {
                      "start": {
                        "line": 108,
                        "column": 9
                      },
                      "end": {
                        "line": 108,
                        "column": 24
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 3247,
                      "end": 3261,
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 10
                        },
                        "end": {
                          "line": 108,
                          "column": 24
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 3247,
                        "end": 3251,
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 10
                          },
                          "end": {
                            "line": 108,
                            "column": 14
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3252,
                        "end": 3261,
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 15
                          },
                          "end": {
                            "line": 108,
                            "column": 24
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 3263,
                  "end": 3475,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 26
                    },
                    "end": {
                      "line": 114,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 3273,
                      "end": 3332,
                      "loc": {
                        "start": {
                          "line": 109,
                          "column": 8
                        },
                        "end": {
                          "line": 109,
                          "column": 67
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3273,
                        "end": 3331,
                        "loc": {
                          "start": {
                            "line": 109,
                            "column": 8
                          },
                          "end": {
                            "line": 109,
                            "column": 66
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3273,
                          "end": 3299,
                          "loc": {
                            "start": {
                              "line": 109,
                              "column": 8
                            },
                            "end": {
                              "line": 109,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3273,
                            "end": 3291,
                            "loc": {
                              "start": {
                                "line": 109,
                                "column": 8
                              },
                              "end": {
                                "line": 109,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 3273,
                              "end": 3287,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 8
                                },
                                "end": {
                                  "line": 109,
                                  "column": 22
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3273,
                                "end": 3277,
                                "loc": {
                                  "start": {
                                    "line": 109,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 109,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3278,
                                "end": 3287,
                                "loc": {
                                  "start": {
                                    "line": 109,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 109,
                                    "column": 22
                                  }
                                },
                                "name": "materials"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3288,
                              "end": 3291,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 23
                                },
                                "end": {
                                  "line": 109,
                                  "column": 26
                                }
                              },
                              "name": "all"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3292,
                            "end": 3299,
                            "loc": {
                              "start": {
                                "line": 109,
                                "column": 27
                              },
                              "end": {
                                "line": 109,
                                "column": 34
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 3300,
                            "end": 3330,
                            "loc": {
                              "start": {
                                "line": 109,
                                "column": 35
                              },
                              "end": {
                                "line": 109,
                                "column": 65
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 3300,
                                "end": 3308,
                                "loc": {
                                  "start": {
                                    "line": 109,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 109,
                                    "column": 43
                                  }
                                },
                                "name": "material"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 3312,
                              "end": 3330,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 47
                                },
                                "end": {
                                  "line": 109,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3312,
                                "end": 3328,
                                "loc": {
                                  "start": {
                                    "line": 109,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 109,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3312,
                                  "end": 3320,
                                  "loc": {
                                    "start": {
                                      "line": 109,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 109,
                                      "column": 55
                                    }
                                  },
                                  "name": "material"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3321,
                                  "end": 3328,
                                  "loc": {
                                    "start": {
                                      "line": 109,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 109,
                                      "column": 63
                                    }
                                  },
                                  "name": "dispose"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3341,
                      "end": 3365,
                      "loc": {
                        "start": {
                          "line": 110,
                          "column": 8
                        },
                        "end": {
                          "line": 110,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3341,
                        "end": 3364,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 8
                          },
                          "end": {
                            "line": 110,
                            "column": 31
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3341,
                          "end": 3359,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 8
                            },
                            "end": {
                              "line": 110,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3341,
                            "end": 3355,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 8
                              },
                              "end": {
                                "line": 110,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3341,
                              "end": 3345,
                              "loc": {
                                "start": {
                                  "line": 110,
                                  "column": 8
                                },
                                "end": {
                                  "line": 110,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3346,
                              "end": 3355,
                              "loc": {
                                "start": {
                                  "line": 110,
                                  "column": 13
                                },
                                "end": {
                                  "line": 110,
                                  "column": 22
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3356,
                            "end": 3359,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 23
                              },
                              "end": {
                                "line": 110,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 3362,
                          "end": 3364,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 29
                            },
                            "end": {
                              "line": 110,
                              "column": 31
                            }
                          },
                          "elements": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3374,
                      "end": 3401,
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 8
                        },
                        "end": {
                          "line": 111,
                          "column": 35
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3374,
                        "end": 3400,
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 8
                          },
                          "end": {
                            "line": 111,
                            "column": 34
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3374,
                          "end": 3395,
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 8
                            },
                            "end": {
                              "line": 111,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3374,
                            "end": 3388,
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 8
                              },
                              "end": {
                                "line": 111,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3374,
                              "end": 3378,
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 8
                                },
                                "end": {
                                  "line": 111,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3379,
                              "end": 3388,
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 13
                                },
                                "end": {
                                  "line": 111,
                                  "column": 22
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3389,
                            "end": 3395,
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 23
                              },
                              "end": {
                                "line": 111,
                                "column": 29
                              }
                            },
                            "name": "meshes"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 3398,
                          "end": 3400,
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 32
                            },
                            "end": {
                              "line": 111,
                              "column": 34
                            }
                          },
                          "elements": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3410,
                      "end": 3436,
                      "loc": {
                        "start": {
                          "line": 112,
                          "column": 8
                        },
                        "end": {
                          "line": 112,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3410,
                        "end": 3435,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 8
                          },
                          "end": {
                            "line": 112,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3410,
                          "end": 3430,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 8
                            },
                            "end": {
                              "line": 112,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3410,
                            "end": 3424,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 8
                              },
                              "end": {
                                "line": 112,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3410,
                              "end": 3414,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 8
                                },
                                "end": {
                                  "line": 112,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3415,
                              "end": 3424,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 13
                                },
                                "end": {
                                  "line": 112,
                                  "column": 22
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3425,
                            "end": 3430,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 23
                              },
                              "end": {
                                "line": 112,
                                "column": 28
                              }
                            },
                            "name": "lines"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 3433,
                          "end": 3435,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 31
                            },
                            "end": {
                              "line": 112,
                              "column": 33
                            }
                          },
                          "elements": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3445,
                      "end": 3469,
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 8
                        },
                        "end": {
                          "line": 113,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3445,
                        "end": 3468,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 8
                          },
                          "end": {
                            "line": 113,
                            "column": 31
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3445,
                          "end": 3456,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 8
                            },
                            "end": {
                              "line": 113,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3445,
                            "end": 3449,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 8
                              },
                              "end": {
                                "line": 113,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3450,
                            "end": 3456,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 13
                              },
                              "end": {
                                "line": 113,
                                "column": 19
                              }
                            },
                            "name": "bounds"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 3459,
                          "end": 3468,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 22
                            },
                            "end": {
                              "line": 113,
                              "column": 31
                            }
                          },
                          "name": "undefined"
                        }
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 3481,
                "end": 3500,
                "loc": {
                  "start": {
                    "line": 116,
                    "column": 4
                  },
                  "end": {
                    "line": 116,
                    "column": 23
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 3481,
                  "end": 3499,
                  "loc": {
                    "start": {
                      "line": 116,
                      "column": 4
                    },
                    "end": {
                      "line": 116,
                      "column": 22
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 3481,
                    "end": 3494,
                    "loc": {
                      "start": {
                        "line": 116,
                        "column": 4
                      },
                      "end": {
                        "line": 116,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 3481,
                      "end": 3485,
                      "loc": {
                        "start": {
                          "line": 116,
                          "column": 4
                        },
                        "end": {
                          "line": 116,
                          "column": 8
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 3486,
                      "end": 3494,
                      "loc": {
                        "start": {
                          "line": 116,
                          "column": 9
                        },
                        "end": {
                          "line": 116,
                          "column": 17
                        }
                      },
                      "name": "userData"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 3497,
                    "end": 3499,
                    "loc": {
                      "start": {
                        "line": 116,
                        "column": 20
                      },
                      "end": {
                        "line": 116,
                        "column": 22
                      }
                    },
                    "properties": []
                  }
                },
                "trailingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Remove children",
                    "start": 3506,
                    "end": 3524,
                    "loc": {
                      "start": {
                        "line": 118,
                        "column": 4
                      },
                      "end": {
                        "line": 118,
                        "column": 22
                      }
                    },
                    "range": [
                      3506,
                      3524
                    ]
                  }
                ]
              },
              {
                "type": "IfStatement",
                "start": 3529,
                "end": 3762,
                "loc": {
                  "start": {
                    "line": 119,
                    "column": 4
                  },
                  "end": {
                    "line": 124,
                    "column": 5
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3533,
                  "end": 3549,
                  "loc": {
                    "start": {
                      "line": 119,
                      "column": 8
                    },
                    "end": {
                      "line": 119,
                      "column": 24
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "UnaryExpression",
                    "start": 3534,
                    "end": 3549,
                    "loc": {
                      "start": {
                        "line": 119,
                        "column": 9
                      },
                      "end": {
                        "line": 119,
                        "column": 24
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 3535,
                      "end": 3549,
                      "loc": {
                        "start": {
                          "line": 119,
                          "column": 10
                        },
                        "end": {
                          "line": 119,
                          "column": 24
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 3536,
                        "end": 3549,
                        "loc": {
                          "start": {
                            "line": 119,
                            "column": 11
                          },
                          "end": {
                            "line": 119,
                            "column": 24
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 3536,
                          "end": 3543,
                          "loc": {
                            "start": {
                              "line": 119,
                              "column": 11
                            },
                            "end": {
                              "line": 119,
                              "column": 18
                            }
                          },
                          "name": "options",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3544,
                          "end": 3549,
                          "loc": {
                            "start": {
                              "line": 119,
                              "column": 19
                            },
                            "end": {
                              "line": 119,
                              "column": 24
                            }
                          },
                          "name": "async"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "leadingComments": null
                    },
                    "leadingComments": null
                  },
                  "leadingComments": null
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 3551,
                  "end": 3665,
                  "loc": {
                    "start": {
                      "line": 119,
                      "column": 26
                    },
                    "end": {
                      "line": 122,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ForStatement",
                      "start": 3561,
                      "end": 3659,
                      "loc": {
                        "start": {
                          "line": 120,
                          "column": 8
                        },
                        "end": {
                          "line": 121,
                          "column": 46
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 3566,
                        "end": 3598,
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 13
                          },
                          "end": {
                            "line": 120,
                            "column": 45
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 3570,
                            "end": 3598,
                            "loc": {
                              "start": {
                                "line": 120,
                                "column": 17
                              },
                              "end": {
                                "line": 120,
                                "column": 45
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 3570,
                              "end": 3571,
                              "loc": {
                                "start": {
                                  "line": 120,
                                  "column": 17
                                },
                                "end": {
                                  "line": 120,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "BinaryExpression",
                              "start": 3574,
                              "end": 3598,
                              "loc": {
                                "start": {
                                  "line": 120,
                                  "column": 21
                                },
                                "end": {
                                  "line": 120,
                                  "column": 45
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 3574,
                                "end": 3594,
                                "loc": {
                                  "start": {
                                    "line": 120,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 120,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3574,
                                  "end": 3587,
                                  "loc": {
                                    "start": {
                                      "line": 120,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 120,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3574,
                                    "end": 3578,
                                    "loc": {
                                      "start": {
                                        "line": 120,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 120,
                                        "column": 25
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3579,
                                    "end": 3587,
                                    "loc": {
                                      "start": {
                                        "line": 120,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 120,
                                        "column": 34
                                      }
                                    },
                                    "name": "children"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3588,
                                  "end": 3594,
                                  "loc": {
                                    "start": {
                                      "line": 120,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 120,
                                      "column": 41
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "operator": "-",
                              "right": {
                                "type": "Literal",
                                "start": 3597,
                                "end": 3598,
                                "loc": {
                                  "start": {
                                    "line": 120,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 120,
                                    "column": 45
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              }
                            }
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 3600,
                        "end": 3606,
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 47
                          },
                          "end": {
                            "line": 120,
                            "column": 53
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 3600,
                          "end": 3601,
                          "loc": {
                            "start": {
                              "line": 120,
                              "column": 47
                            },
                            "end": {
                              "line": 120,
                              "column": 48
                            }
                          },
                          "name": "i"
                        },
                        "operator": ">=",
                        "right": {
                          "type": "Literal",
                          "start": 3605,
                          "end": 3606,
                          "loc": {
                            "start": {
                              "line": 120,
                              "column": 52
                            },
                            "end": {
                              "line": 120,
                              "column": 53
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 3608,
                        "end": 3611,
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 55
                          },
                          "end": {
                            "line": 120,
                            "column": 58
                          }
                        },
                        "operator": "--",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 3608,
                          "end": 3609,
                          "loc": {
                            "start": {
                              "line": 120,
                              "column": 55
                            },
                            "end": {
                              "line": 120,
                              "column": 56
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 3625,
                        "end": 3659,
                        "loc": {
                          "start": {
                            "line": 121,
                            "column": 12
                          },
                          "end": {
                            "line": 121,
                            "column": 46
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 3625,
                          "end": 3658,
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 12
                            },
                            "end": {
                              "line": 121,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3625,
                            "end": 3649,
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 12
                              },
                              "end": {
                                "line": 121,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 3625,
                              "end": 3641,
                              "loc": {
                                "start": {
                                  "line": 121,
                                  "column": 12
                                },
                                "end": {
                                  "line": 121,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3625,
                                "end": 3638,
                                "loc": {
                                  "start": {
                                    "line": 121,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 121,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3625,
                                  "end": 3629,
                                  "loc": {
                                    "start": {
                                      "line": 121,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 121,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3630,
                                  "end": 3638,
                                  "loc": {
                                    "start": {
                                      "line": 121,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 121,
                                      "column": 25
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3639,
                                "end": 3640,
                                "loc": {
                                  "start": {
                                    "line": 121,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 121,
                                    "column": 27
                                  }
                                },
                                "name": "i"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3642,
                              "end": 3649,
                              "loc": {
                                "start": {
                                  "line": 121,
                                  "column": 29
                                },
                                "end": {
                                  "line": 121,
                                  "column": 36
                                }
                              },
                              "name": "destroy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 3650,
                              "end": 3657,
                              "loc": {
                                "start": {
                                  "line": 121,
                                  "column": 37
                                },
                                "end": {
                                  "line": 121,
                                  "column": 44
                                }
                              },
                              "name": "options"
                            }
                          ]
                        }
                      }
                    }
                  ]
                },
                "alternate": {
                  "type": "BlockStatement",
                  "start": 3671,
                  "end": 3762,
                  "loc": {
                    "start": {
                      "line": 122,
                      "column": 11
                    },
                    "end": {
                      "line": 124,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 3681,
                      "end": 3756,
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 8
                        },
                        "end": {
                          "line": 123,
                          "column": 83
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 3688,
                        "end": 3756,
                        "loc": {
                          "start": {
                            "line": 123,
                            "column": 15
                          },
                          "end": {
                            "line": 123,
                            "column": 83
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3688,
                          "end": 3699,
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 15
                            },
                            "end": {
                              "line": 123,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 3688,
                            "end": 3695,
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 15
                              },
                              "end": {
                                "line": 123,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3696,
                            "end": 3699,
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 23
                              },
                              "end": {
                                "line": 123,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 3700,
                            "end": 3755,
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 27
                              },
                              "end": {
                                "line": 123,
                                "column": 82
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 3700,
                              "end": 3717,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 27
                                },
                                "end": {
                                  "line": 123,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3700,
                                "end": 3713,
                                "loc": {
                                  "start": {
                                    "line": 123,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 123,
                                    "column": 40
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3700,
                                  "end": 3704,
                                  "loc": {
                                    "start": {
                                      "line": 123,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 123,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3705,
                                  "end": 3713,
                                  "loc": {
                                    "start": {
                                      "line": 123,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 123,
                                      "column": 40
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3714,
                                "end": 3717,
                                "loc": {
                                  "start": {
                                    "line": 123,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 123,
                                    "column": 44
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 3718,
                                "end": 3754,
                                "loc": {
                                  "start": {
                                    "line": 123,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 123,
                                    "column": 81
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 3718,
                                    "end": 3723,
                                    "loc": {
                                      "start": {
                                        "line": 123,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 123,
                                        "column": 50
                                      }
                                    },
                                    "name": "child"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 3727,
                                  "end": 3754,
                                  "loc": {
                                    "start": {
                                      "line": 123,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 123,
                                      "column": 81
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 3727,
                                    "end": 3745,
                                    "loc": {
                                      "start": {
                                        "line": 123,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 123,
                                        "column": 72
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 3727,
                                      "end": 3732,
                                      "loc": {
                                        "start": {
                                          "line": 123,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 123,
                                          "column": 59
                                        }
                                      },
                                      "name": "child"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3733,
                                      "end": 3745,
                                      "loc": {
                                        "start": {
                                          "line": 123,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 123,
                                          "column": 72
                                        }
                                      },
                                      "name": "destroyAsync"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 3746,
                                      "end": 3753,
                                      "loc": {
                                        "start": {
                                          "line": 123,
                                          "column": 73
                                        },
                                        "end": {
                                          "line": 123,
                                          "column": 80
                                        }
                                      },
                                      "name": "options"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "leadingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Remove children",
                    "start": 3506,
                    "end": 3524,
                    "loc": {
                      "start": {
                        "line": 118,
                        "column": 4
                      },
                      "end": {
                        "line": 118,
                        "column": 22
                      }
                    },
                    "range": [
                      3506,
                      3524
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 3766,
      "end": 4256,
      "loc": {
        "start": {
          "line": 127,
          "column": 0
        },
        "end": {
          "line": 135,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 3766,
        "end": 4256,
        "loc": {
          "start": {
            "line": 127,
            "column": 0
          },
          "end": {
            "line": 135,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 3766,
          "end": 3803,
          "loc": {
            "start": {
              "line": 127,
              "column": 0
            },
            "end": {
              "line": 127,
              "column": 37
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 3766,
            "end": 3790,
            "loc": {
              "start": {
                "line": 127,
                "column": 0
              },
              "end": {
                "line": 127,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 3766,
              "end": 3780,
              "loc": {
                "start": {
                  "line": 127,
                  "column": 0
                },
                "end": {
                  "line": 127,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 3766,
                "end": 3771,
                "loc": {
                  "start": {
                    "line": 127,
                    "column": 0
                  },
                  "end": {
                    "line": 127,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 3772,
                "end": 3780,
                "loc": {
                  "start": {
                    "line": 127,
                    "column": 6
                  },
                  "end": {
                    "line": 127,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 3781,
              "end": 3790,
              "loc": {
                "start": {
                  "line": 127,
                  "column": 15
                },
                "end": {
                  "line": 127,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 3791,
            "end": 3803,
            "loc": {
              "start": {
                "line": 127,
                "column": 25
              },
              "end": {
                "line": 127,
                "column": 37
              }
            },
            "name": "destroyAsync"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 3806,
          "end": 4256,
          "loc": {
            "start": {
              "line": 127,
              "column": 40
            },
            "end": {
              "line": 135,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 3791,
            "end": 3803,
            "loc": {
              "start": {
                "line": 127,
                "column": 25
              },
              "end": {
                "line": 127,
                "column": 37
              }
            },
            "name": "destroyAsync"
          },
          "generator": false,
          "expression": false,
          "async": true,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 3821,
              "end": 3833,
              "loc": {
                "start": {
                  "line": 127,
                  "column": 55
                },
                "end": {
                  "line": 127,
                  "column": 67
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 3821,
                "end": 3828,
                "loc": {
                  "start": {
                    "line": 127,
                    "column": 55
                  },
                  "end": {
                    "line": 127,
                    "column": 62
                  }
                },
                "name": "options"
              },
              "right": {
                "type": "ObjectExpression",
                "start": 3831,
                "end": 3833,
                "loc": {
                  "start": {
                    "line": 127,
                    "column": 65
                  },
                  "end": {
                    "line": 127,
                    "column": 67
                  }
                },
                "properties": []
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 3835,
            "end": 4256,
            "loc": {
              "start": {
                "line": 127,
                "column": 69
              },
              "end": {
                "line": 135,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 3841,
                "end": 3926,
                "loc": {
                  "start": {
                    "line": 128,
                    "column": 4
                  },
                  "end": {
                    "line": 128,
                    "column": 89
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 3841,
                  "end": 3925,
                  "loc": {
                    "start": {
                      "line": 128,
                      "column": 4
                    },
                    "end": {
                      "line": 128,
                      "column": 88
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 3841,
                    "end": 3848,
                    "loc": {
                      "start": {
                        "line": 128,
                        "column": 4
                      },
                      "end": {
                        "line": 128,
                        "column": 11
                      }
                    },
                    "name": "options"
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 3851,
                    "end": 3925,
                    "loc": {
                      "start": {
                        "line": 128,
                        "column": 14
                      },
                      "end": {
                        "line": 128,
                        "column": 88
                      }
                    },
                    "properties": [
                      {
                        "type": "Property",
                        "start": 3853,
                        "end": 3863,
                        "loc": {
                          "start": {
                            "line": 128,
                            "column": 16
                          },
                          "end": {
                            "line": 128,
                            "column": 26
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 3853,
                          "end": 3857,
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 16
                            },
                            "end": {
                              "line": 128,
                              "column": 20
                            }
                          },
                          "name": "keep"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 3859,
                          "end": 3863,
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 22
                            },
                            "end": {
                              "line": 128,
                              "column": 26
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 3865,
                        "end": 3875,
                        "loc": {
                          "start": {
                            "line": 128,
                            "column": 28
                          },
                          "end": {
                            "line": 128,
                            "column": 38
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 3865,
                          "end": 3869,
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 28
                            },
                            "end": {
                              "line": 128,
                              "column": 32
                            }
                          },
                          "name": "data"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 3871,
                          "end": 3875,
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 34
                            },
                            "end": {
                              "line": 128,
                              "column": 38
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 3877,
                        "end": 3894,
                        "loc": {
                          "start": {
                            "line": 128,
                            "column": 40
                          },
                          "end": {
                            "line": 128,
                            "column": 57
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 3877,
                          "end": 3888,
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 40
                            },
                            "end": {
                              "line": 128,
                              "column": 51
                            }
                          },
                          "name": "interaction"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 3890,
                          "end": 3894,
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 53
                            },
                            "end": {
                              "line": 128,
                              "column": 57
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 3896,
                        "end": 3911,
                        "loc": {
                          "start": {
                            "line": 128,
                            "column": 59
                          },
                          "end": {
                            "line": 128,
                            "column": 74
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 3896,
                          "end": 3905,
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 59
                            },
                            "end": {
                              "line": 128,
                              "column": 68
                            }
                          },
                          "name": "listeners"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 3907,
                          "end": 3911,
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 70
                            },
                            "end": {
                              "line": 128,
                              "column": 74
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "SpreadProperty",
                        "start": 3913,
                        "end": 3923,
                        "loc": {
                          "start": {
                            "line": 128,
                            "column": 76
                          },
                          "end": {
                            "line": 128,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 3916,
                          "end": 3923,
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 79
                            },
                            "end": {
                              "line": 128,
                              "column": 86
                            }
                          },
                          "name": "options"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 3928,
                "end": 3966,
                "loc": {
                  "start": {
                    "line": 129,
                    "column": 1
                  },
                  "end": {
                    "line": 129,
                    "column": 39
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 3932,
                  "end": 3957,
                  "loc": {
                    "start": {
                      "line": 129,
                      "column": 5
                    },
                    "end": {
                      "line": 129,
                      "column": 30
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 3932,
                    "end": 3944,
                    "loc": {
                      "start": {
                        "line": 129,
                        "column": 5
                      },
                      "end": {
                        "line": 129,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 3932,
                      "end": 3939,
                      "loc": {
                        "start": {
                          "line": 129,
                          "column": 5
                        },
                        "end": {
                          "line": 129,
                          "column": 12
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 3940,
                      "end": 3944,
                      "loc": {
                        "start": {
                          "line": 129,
                          "column": 13
                        },
                        "end": {
                          "line": 129,
                          "column": 17
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "MemberExpression",
                    "start": 3948,
                    "end": 3957,
                    "loc": {
                      "start": {
                        "line": 129,
                        "column": 21
                      },
                      "end": {
                        "line": 129,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 3948,
                      "end": 3952,
                      "loc": {
                        "start": {
                          "line": 129,
                          "column": 21
                        },
                        "end": {
                          "line": 129,
                          "column": 25
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 3953,
                      "end": 3957,
                      "loc": {
                        "start": {
                          "line": 129,
                          "column": 26
                        },
                        "end": {
                          "line": 129,
                          "column": 30
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 3959,
                  "end": 3966,
                  "loc": {
                    "start": {
                      "line": 129,
                      "column": 32
                    },
                    "end": {
                      "line": 129,
                      "column": 39
                    }
                  },
                  "argument": null
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 3971,
                "end": 4019,
                "loc": {
                  "start": {
                    "line": 130,
                    "column": 4
                  },
                  "end": {
                    "line": 130,
                    "column": 52
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 3971,
                  "end": 4018,
                  "loc": {
                    "start": {
                      "line": 130,
                      "column": 4
                    },
                    "end": {
                      "line": 130,
                      "column": 51
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 3971,
                    "end": 3990,
                    "loc": {
                      "start": {
                        "line": 130,
                        "column": 4
                      },
                      "end": {
                        "line": 130,
                        "column": 23
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 3971,
                      "end": 3978,
                      "loc": {
                        "start": {
                          "line": 130,
                          "column": 4
                        },
                        "end": {
                          "line": 130,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 3979,
                      "end": 3990,
                      "loc": {
                        "start": {
                          "line": 130,
                          "column": 12
                        },
                        "end": {
                          "line": 130,
                          "column": 23
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 3994,
                    "end": 4018,
                    "loc": {
                      "start": {
                        "line": 130,
                        "column": 27
                      },
                      "end": {
                        "line": 130,
                        "column": 51
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 3994,
                      "end": 4016,
                      "loc": {
                        "start": {
                          "line": 130,
                          "column": 27
                        },
                        "end": {
                          "line": 130,
                          "column": 49
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 3994,
                        "end": 3998,
                        "loc": {
                          "start": {
                            "line": 130,
                            "column": 27
                          },
                          "end": {
                            "line": 130,
                            "column": 31
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3999,
                        "end": 4016,
                        "loc": {
                          "start": {
                            "line": 130,
                            "column": 32
                          },
                          "end": {
                            "line": 130,
                            "column": 49
                          }
                        },
                        "name": "removeInteraction"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4021,
                "end": 4073,
                "loc": {
                  "start": {
                    "line": 131,
                    "column": 1
                  },
                  "end": {
                    "line": 131,
                    "column": 53
                  }
                },
                "expression": {
                  "type": "AwaitExpression",
                  "start": 4021,
                  "end": 4072,
                  "loc": {
                    "start": {
                      "line": 131,
                      "column": 1
                    },
                    "end": {
                      "line": 131,
                      "column": 52
                    }
                  },
                  "all": false,
                  "argument": {
                    "type": "CallExpression",
                    "start": 4027,
                    "end": 4072,
                    "loc": {
                      "start": {
                        "line": 131,
                        "column": 7
                      },
                      "end": {
                        "line": 131,
                        "column": 52
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4027,
                      "end": 4036,
                      "loc": {
                        "start": {
                          "line": 131,
                          "column": 7
                        },
                        "end": {
                          "line": 131,
                          "column": 16
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4027,
                        "end": 4031,
                        "loc": {
                          "start": {
                            "line": 131,
                            "column": 7
                          },
                          "end": {
                            "line": 131,
                            "column": 11
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4032,
                        "end": 4036,
                        "loc": {
                          "start": {
                            "line": 131,
                            "column": 12
                          },
                          "end": {
                            "line": 131,
                            "column": 16
                          }
                        },
                        "name": "emit"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "MemberExpression",
                        "start": 4037,
                        "end": 4071,
                        "loc": {
                          "start": {
                            "line": 131,
                            "column": 17
                          },
                          "end": {
                            "line": 131,
                            "column": 51
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4037,
                          "end": 4061,
                          "loc": {
                            "start": {
                              "line": 131,
                              "column": 17
                            },
                            "end": {
                              "line": 131,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4037,
                            "end": 4051,
                            "loc": {
                              "start": {
                                "line": 131,
                                "column": 17
                              },
                              "end": {
                                "line": 131,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 4037,
                              "end": 4044,
                              "loc": {
                                "start": {
                                  "line": 131,
                                  "column": 17
                                },
                                "end": {
                                  "line": 131,
                                  "column": 24
                                }
                              },
                              "name": "Object3"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4045,
                              "end": 4051,
                              "loc": {
                                "start": {
                                  "line": 131,
                                  "column": 25
                                },
                                "end": {
                                  "line": 131,
                                  "column": 31
                                }
                              },
                              "name": "Events"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4052,
                            "end": 4061,
                            "loc": {
                              "start": {
                                "line": 131,
                                "column": 32
                              },
                              "end": {
                                "line": 131,
                                "column": 41
                              }
                            },
                            "name": "Lifecycle"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4062,
                          "end": 4071,
                          "loc": {
                            "start": {
                              "line": 131,
                              "column": 42
                            },
                            "end": {
                              "line": 131,
                              "column": 51
                            }
                          },
                          "name": "Destroyed"
                        },
                        "computed": false
                      }
                    ]
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4075,
                "end": 4126,
                "loc": {
                  "start": {
                    "line": 132,
                    "column": 1
                  },
                  "end": {
                    "line": 132,
                    "column": 52
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4075,
                  "end": 4125,
                  "loc": {
                    "start": {
                      "line": 132,
                      "column": 1
                    },
                    "end": {
                      "line": 132,
                      "column": 51
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4075,
                    "end": 4086,
                    "loc": {
                      "start": {
                        "line": 132,
                        "column": 1
                      },
                      "end": {
                        "line": 132,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4075,
                      "end": 4079,
                      "loc": {
                        "start": {
                          "line": 132,
                          "column": 1
                        },
                        "end": {
                          "line": 132,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4080,
                      "end": 4086,
                      "loc": {
                        "start": {
                          "line": 132,
                          "column": 6
                        },
                        "end": {
                          "line": 132,
                          "column": 12
                        }
                      },
                      "name": "parent"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "AwaitExpression",
                    "start": 4090,
                    "end": 4125,
                    "loc": {
                      "start": {
                        "line": 132,
                        "column": 16
                      },
                      "end": {
                        "line": 132,
                        "column": 51
                      }
                    },
                    "all": false,
                    "argument": {
                      "type": "CallExpression",
                      "start": 4096,
                      "end": 4125,
                      "loc": {
                        "start": {
                          "line": 132,
                          "column": 22
                        },
                        "end": {
                          "line": 132,
                          "column": 51
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 4096,
                        "end": 4119,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 22
                          },
                          "end": {
                            "line": 132,
                            "column": 45
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4096,
                          "end": 4107,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 22
                            },
                            "end": {
                              "line": 132,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4096,
                            "end": 4100,
                            "loc": {
                              "start": {
                                "line": 132,
                                "column": 22
                              },
                              "end": {
                                "line": 132,
                                "column": 26
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4101,
                            "end": 4107,
                            "loc": {
                              "start": {
                                "line": 132,
                                "column": 27
                              },
                              "end": {
                                "line": 132,
                                "column": 33
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4108,
                          "end": 4119,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 34
                            },
                            "end": {
                              "line": 132,
                              "column": 45
                            }
                          },
                          "name": "removeAsync"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 4120,
                          "end": 4124,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 46
                            },
                            "end": {
                              "line": 132,
                              "column": 50
                            }
                          }
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4131,
                "end": 4175,
                "loc": {
                  "start": {
                    "line": 133,
                    "column": 4
                  },
                  "end": {
                    "line": 133,
                    "column": 48
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4131,
                  "end": 4174,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 4
                    },
                    "end": {
                      "line": 133,
                      "column": 47
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4131,
                    "end": 4148,
                    "loc": {
                      "start": {
                        "line": 133,
                        "column": 4
                      },
                      "end": {
                        "line": 133,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4131,
                      "end": 4138,
                      "loc": {
                        "start": {
                          "line": 133,
                          "column": 4
                        },
                        "end": {
                          "line": 133,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4139,
                      "end": 4148,
                      "loc": {
                        "start": {
                          "line": 133,
                          "column": 12
                        },
                        "end": {
                          "line": 133,
                          "column": 21
                        }
                      },
                      "name": "listeners"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4152,
                    "end": 4174,
                    "loc": {
                      "start": {
                        "line": 133,
                        "column": 25
                      },
                      "end": {
                        "line": 133,
                        "column": 47
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4152,
                      "end": 4172,
                      "loc": {
                        "start": {
                          "line": 133,
                          "column": 25
                        },
                        "end": {
                          "line": 133,
                          "column": 45
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4152,
                        "end": 4156,
                        "loc": {
                          "start": {
                            "line": 133,
                            "column": 25
                          },
                          "end": {
                            "line": 133,
                            "column": 29
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4157,
                        "end": 4172,
                        "loc": {
                          "start": {
                            "line": 133,
                            "column": 30
                          },
                          "end": {
                            "line": 133,
                            "column": 45
                          }
                        },
                        "name": "removeListeners"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4180,
                "end": 4254,
                "loc": {
                  "start": {
                    "line": 134,
                    "column": 4
                  },
                  "end": {
                    "line": 134,
                    "column": 78
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4180,
                  "end": 4253,
                  "loc": {
                    "start": {
                      "line": 134,
                      "column": 4
                    },
                    "end": {
                      "line": 134,
                      "column": 77
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4180,
                    "end": 4192,
                    "loc": {
                      "start": {
                        "line": 134,
                        "column": 4
                      },
                      "end": {
                        "line": 134,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4180,
                      "end": 4187,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 4
                        },
                        "end": {
                          "line": 134,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4188,
                      "end": 4192,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 12
                        },
                        "end": {
                          "line": 134,
                          "column": 16
                        }
                      },
                      "name": "data"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "AwaitExpression",
                    "start": 4196,
                    "end": 4253,
                    "loc": {
                      "start": {
                        "line": 134,
                        "column": 20
                      },
                      "end": {
                        "line": 134,
                        "column": 77
                      }
                    },
                    "all": false,
                    "argument": {
                      "type": "CallExpression",
                      "start": 4202,
                      "end": 4253,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 26
                        },
                        "end": {
                          "line": 134,
                          "column": 77
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 4202,
                        "end": 4224,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 26
                          },
                          "end": {
                            "line": 134,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 4202,
                          "end": 4206,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 26
                            },
                            "end": {
                              "line": 134,
                              "column": 30
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4207,
                          "end": 4224,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 31
                            },
                            "end": {
                              "line": 134,
                              "column": 48
                            }
                          },
                          "name": "_destroyRecursive"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ObjectExpression",
                          "start": 4225,
                          "end": 4252,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 49
                            },
                            "end": {
                              "line": 134,
                              "column": 76
                            }
                          },
                          "properties": [
                            {
                              "type": "SpreadProperty",
                              "start": 4227,
                              "end": 4237,
                              "loc": {
                                "start": {
                                  "line": 134,
                                  "column": 51
                                },
                                "end": {
                                  "line": 134,
                                  "column": 61
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 4230,
                                "end": 4237,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 61
                                  }
                                },
                                "name": "options"
                              }
                            },
                            {
                              "type": "Property",
                              "start": 4239,
                              "end": 4250,
                              "loc": {
                                "start": {
                                  "line": 134,
                                  "column": 63
                                },
                                "end": {
                                  "line": 134,
                                  "column": 74
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "key": {
                                "type": "Identifier",
                                "start": 4239,
                                "end": 4244,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 68
                                  }
                                },
                                "name": "async"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 4246,
                                "end": 4250,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 74
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              },
                              "kind": "init"
                            }
                          ]
                        }
                      ]
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 4258,
      "end": 4691,
      "loc": {
        "start": {
          "line": 137,
          "column": 0
        },
        "end": {
          "line": 145,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 4258,
        "end": 4691,
        "loc": {
          "start": {
            "line": 137,
            "column": 0
          },
          "end": {
            "line": 145,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 4258,
          "end": 4290,
          "loc": {
            "start": {
              "line": 137,
              "column": 0
            },
            "end": {
              "line": 137,
              "column": 32
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 4258,
            "end": 4282,
            "loc": {
              "start": {
                "line": 137,
                "column": 0
              },
              "end": {
                "line": 137,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 4258,
              "end": 4272,
              "loc": {
                "start": {
                  "line": 137,
                  "column": 0
                },
                "end": {
                  "line": 137,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 4258,
                "end": 4263,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 0
                  },
                  "end": {
                    "line": 137,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 4264,
                "end": 4272,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 6
                  },
                  "end": {
                    "line": 137,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 4273,
              "end": 4282,
              "loc": {
                "start": {
                  "line": 137,
                  "column": 15
                },
                "end": {
                  "line": 137,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 4283,
            "end": 4290,
            "loc": {
              "start": {
                "line": 137,
                "column": 25
              },
              "end": {
                "line": 137,
                "column": 32
              }
            },
            "name": "destroy"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 4293,
          "end": 4691,
          "loc": {
            "start": {
              "line": 137,
              "column": 35
            },
            "end": {
              "line": 145,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 4283,
            "end": 4290,
            "loc": {
              "start": {
                "line": 137,
                "column": 25
              },
              "end": {
                "line": 137,
                "column": 32
              }
            },
            "name": "destroy"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 4302,
              "end": 4314,
              "loc": {
                "start": {
                  "line": 137,
                  "column": 44
                },
                "end": {
                  "line": 137,
                  "column": 56
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 4302,
                "end": 4309,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 44
                  },
                  "end": {
                    "line": 137,
                    "column": 51
                  }
                },
                "name": "options"
              },
              "right": {
                "type": "ObjectExpression",
                "start": 4312,
                "end": 4314,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 54
                  },
                  "end": {
                    "line": 137,
                    "column": 56
                  }
                },
                "properties": []
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 4316,
            "end": 4691,
            "loc": {
              "start": {
                "line": 137,
                "column": 58
              },
              "end": {
                "line": 145,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 4322,
                "end": 4407,
                "loc": {
                  "start": {
                    "line": 138,
                    "column": 4
                  },
                  "end": {
                    "line": 138,
                    "column": 89
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 4322,
                  "end": 4406,
                  "loc": {
                    "start": {
                      "line": 138,
                      "column": 4
                    },
                    "end": {
                      "line": 138,
                      "column": 88
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 4322,
                    "end": 4329,
                    "loc": {
                      "start": {
                        "line": 138,
                        "column": 4
                      },
                      "end": {
                        "line": 138,
                        "column": 11
                      }
                    },
                    "name": "options"
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 4332,
                    "end": 4406,
                    "loc": {
                      "start": {
                        "line": 138,
                        "column": 14
                      },
                      "end": {
                        "line": 138,
                        "column": 88
                      }
                    },
                    "properties": [
                      {
                        "type": "Property",
                        "start": 4334,
                        "end": 4344,
                        "loc": {
                          "start": {
                            "line": 138,
                            "column": 16
                          },
                          "end": {
                            "line": 138,
                            "column": 26
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4334,
                          "end": 4338,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 16
                            },
                            "end": {
                              "line": 138,
                              "column": 20
                            }
                          },
                          "name": "keep"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4340,
                          "end": 4344,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 22
                            },
                            "end": {
                              "line": 138,
                              "column": 26
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4346,
                        "end": 4356,
                        "loc": {
                          "start": {
                            "line": 138,
                            "column": 28
                          },
                          "end": {
                            "line": 138,
                            "column": 38
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4346,
                          "end": 4350,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 28
                            },
                            "end": {
                              "line": 138,
                              "column": 32
                            }
                          },
                          "name": "data"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4352,
                          "end": 4356,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 34
                            },
                            "end": {
                              "line": 138,
                              "column": 38
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4358,
                        "end": 4375,
                        "loc": {
                          "start": {
                            "line": 138,
                            "column": 40
                          },
                          "end": {
                            "line": 138,
                            "column": 57
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4358,
                          "end": 4369,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 40
                            },
                            "end": {
                              "line": 138,
                              "column": 51
                            }
                          },
                          "name": "interaction"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4371,
                          "end": 4375,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 53
                            },
                            "end": {
                              "line": 138,
                              "column": 57
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4377,
                        "end": 4392,
                        "loc": {
                          "start": {
                            "line": 138,
                            "column": 59
                          },
                          "end": {
                            "line": 138,
                            "column": 74
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4377,
                          "end": 4386,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 59
                            },
                            "end": {
                              "line": 138,
                              "column": 68
                            }
                          },
                          "name": "listeners"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4388,
                          "end": 4392,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 70
                            },
                            "end": {
                              "line": 138,
                              "column": 74
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "SpreadProperty",
                        "start": 4394,
                        "end": 4404,
                        "loc": {
                          "start": {
                            "line": 138,
                            "column": 76
                          },
                          "end": {
                            "line": 138,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 4397,
                          "end": 4404,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 79
                            },
                            "end": {
                              "line": 138,
                              "column": 86
                            }
                          },
                          "name": "options"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 4409,
                "end": 4447,
                "loc": {
                  "start": {
                    "line": 139,
                    "column": 1
                  },
                  "end": {
                    "line": 139,
                    "column": 39
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 4413,
                  "end": 4438,
                  "loc": {
                    "start": {
                      "line": 139,
                      "column": 5
                    },
                    "end": {
                      "line": 139,
                      "column": 30
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4413,
                    "end": 4425,
                    "loc": {
                      "start": {
                        "line": 139,
                        "column": 5
                      },
                      "end": {
                        "line": 139,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4413,
                      "end": 4420,
                      "loc": {
                        "start": {
                          "line": 139,
                          "column": 5
                        },
                        "end": {
                          "line": 139,
                          "column": 12
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4421,
                      "end": 4425,
                      "loc": {
                        "start": {
                          "line": 139,
                          "column": 13
                        },
                        "end": {
                          "line": 139,
                          "column": 17
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "MemberExpression",
                    "start": 4429,
                    "end": 4438,
                    "loc": {
                      "start": {
                        "line": 139,
                        "column": 21
                      },
                      "end": {
                        "line": 139,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4429,
                      "end": 4433,
                      "loc": {
                        "start": {
                          "line": 139,
                          "column": 21
                        },
                        "end": {
                          "line": 139,
                          "column": 25
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4434,
                      "end": 4438,
                      "loc": {
                        "start": {
                          "line": 139,
                          "column": 26
                        },
                        "end": {
                          "line": 139,
                          "column": 30
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 4440,
                  "end": 4447,
                  "loc": {
                    "start": {
                      "line": 139,
                      "column": 32
                    },
                    "end": {
                      "line": 139,
                      "column": 39
                    }
                  },
                  "argument": null
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 4449,
                "end": 4495,
                "loc": {
                  "start": {
                    "line": 140,
                    "column": 1
                  },
                  "end": {
                    "line": 140,
                    "column": 47
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 4449,
                  "end": 4494,
                  "loc": {
                    "start": {
                      "line": 140,
                      "column": 1
                    },
                    "end": {
                      "line": 140,
                      "column": 46
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 4449,
                    "end": 4458,
                    "loc": {
                      "start": {
                        "line": 140,
                        "column": 1
                      },
                      "end": {
                        "line": 140,
                        "column": 10
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4449,
                      "end": 4453,
                      "loc": {
                        "start": {
                          "line": 140,
                          "column": 1
                        },
                        "end": {
                          "line": 140,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4454,
                      "end": 4458,
                      "loc": {
                        "start": {
                          "line": 140,
                          "column": 6
                        },
                        "end": {
                          "line": 140,
                          "column": 10
                        }
                      },
                      "name": "emit"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "MemberExpression",
                      "start": 4459,
                      "end": 4493,
                      "loc": {
                        "start": {
                          "line": 140,
                          "column": 11
                        },
                        "end": {
                          "line": 140,
                          "column": 45
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 4459,
                        "end": 4483,
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 11
                          },
                          "end": {
                            "line": 140,
                            "column": 35
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4459,
                          "end": 4473,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 11
                            },
                            "end": {
                              "line": 140,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 4459,
                            "end": 4466,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 11
                              },
                              "end": {
                                "line": 140,
                                "column": 18
                              }
                            },
                            "name": "Object3"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4467,
                            "end": 4473,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 19
                              },
                              "end": {
                                "line": 140,
                                "column": 25
                              }
                            },
                            "name": "Events"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4474,
                          "end": 4483,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 26
                            },
                            "end": {
                              "line": 140,
                              "column": 35
                            }
                          },
                          "name": "Lifecycle"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4484,
                        "end": 4493,
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 36
                          },
                          "end": {
                            "line": 140,
                            "column": 45
                          }
                        },
                        "name": "Destroyed"
                      },
                      "computed": false
                    }
                  ]
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4497,
                "end": 4537,
                "loc": {
                  "start": {
                    "line": 141,
                    "column": 1
                  },
                  "end": {
                    "line": 141,
                    "column": 41
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4497,
                  "end": 4536,
                  "loc": {
                    "start": {
                      "line": 141,
                      "column": 1
                    },
                    "end": {
                      "line": 141,
                      "column": 40
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4497,
                    "end": 4508,
                    "loc": {
                      "start": {
                        "line": 141,
                        "column": 1
                      },
                      "end": {
                        "line": 141,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4497,
                      "end": 4501,
                      "loc": {
                        "start": {
                          "line": 141,
                          "column": 1
                        },
                        "end": {
                          "line": 141,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4502,
                      "end": 4508,
                      "loc": {
                        "start": {
                          "line": 141,
                          "column": 6
                        },
                        "end": {
                          "line": 141,
                          "column": 12
                        }
                      },
                      "name": "parent"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4512,
                    "end": 4536,
                    "loc": {
                      "start": {
                        "line": 141,
                        "column": 16
                      },
                      "end": {
                        "line": 141,
                        "column": 40
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4512,
                      "end": 4530,
                      "loc": {
                        "start": {
                          "line": 141,
                          "column": 16
                        },
                        "end": {
                          "line": 141,
                          "column": 34
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 4512,
                        "end": 4523,
                        "loc": {
                          "start": {
                            "line": 141,
                            "column": 16
                          },
                          "end": {
                            "line": 141,
                            "column": 27
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 4512,
                          "end": 4516,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 16
                            },
                            "end": {
                              "line": 141,
                              "column": 20
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4517,
                          "end": 4523,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 21
                            },
                            "end": {
                              "line": 141,
                              "column": 27
                            }
                          },
                          "name": "parent"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4524,
                        "end": 4530,
                        "loc": {
                          "start": {
                            "line": 141,
                            "column": 28
                          },
                          "end": {
                            "line": 141,
                            "column": 34
                          }
                        },
                        "name": "remove"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 4531,
                        "end": 4535,
                        "loc": {
                          "start": {
                            "line": 141,
                            "column": 35
                          },
                          "end": {
                            "line": 141,
                            "column": 39
                          }
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4542,
                "end": 4590,
                "loc": {
                  "start": {
                    "line": 142,
                    "column": 4
                  },
                  "end": {
                    "line": 142,
                    "column": 52
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4542,
                  "end": 4589,
                  "loc": {
                    "start": {
                      "line": 142,
                      "column": 4
                    },
                    "end": {
                      "line": 142,
                      "column": 51
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4542,
                    "end": 4561,
                    "loc": {
                      "start": {
                        "line": 142,
                        "column": 4
                      },
                      "end": {
                        "line": 142,
                        "column": 23
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4542,
                      "end": 4549,
                      "loc": {
                        "start": {
                          "line": 142,
                          "column": 4
                        },
                        "end": {
                          "line": 142,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4550,
                      "end": 4561,
                      "loc": {
                        "start": {
                          "line": 142,
                          "column": 12
                        },
                        "end": {
                          "line": 142,
                          "column": 23
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4565,
                    "end": 4589,
                    "loc": {
                      "start": {
                        "line": 142,
                        "column": 27
                      },
                      "end": {
                        "line": 142,
                        "column": 51
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4565,
                      "end": 4587,
                      "loc": {
                        "start": {
                          "line": 142,
                          "column": 27
                        },
                        "end": {
                          "line": 142,
                          "column": 49
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4565,
                        "end": 4569,
                        "loc": {
                          "start": {
                            "line": 142,
                            "column": 27
                          },
                          "end": {
                            "line": 142,
                            "column": 31
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4570,
                        "end": 4587,
                        "loc": {
                          "start": {
                            "line": 142,
                            "column": 32
                          },
                          "end": {
                            "line": 142,
                            "column": 49
                          }
                        },
                        "name": "removeInteraction"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4595,
                "end": 4639,
                "loc": {
                  "start": {
                    "line": 143,
                    "column": 4
                  },
                  "end": {
                    "line": 143,
                    "column": 48
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4595,
                  "end": 4638,
                  "loc": {
                    "start": {
                      "line": 143,
                      "column": 4
                    },
                    "end": {
                      "line": 143,
                      "column": 47
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4595,
                    "end": 4612,
                    "loc": {
                      "start": {
                        "line": 143,
                        "column": 4
                      },
                      "end": {
                        "line": 143,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4595,
                      "end": 4602,
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 4
                        },
                        "end": {
                          "line": 143,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4603,
                      "end": 4612,
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 12
                        },
                        "end": {
                          "line": 143,
                          "column": 21
                        }
                      },
                      "name": "listeners"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4616,
                    "end": 4638,
                    "loc": {
                      "start": {
                        "line": 143,
                        "column": 25
                      },
                      "end": {
                        "line": 143,
                        "column": 47
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4616,
                      "end": 4636,
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 25
                        },
                        "end": {
                          "line": 143,
                          "column": 45
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4616,
                        "end": 4620,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 25
                          },
                          "end": {
                            "line": 143,
                            "column": 29
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4621,
                        "end": 4636,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 30
                          },
                          "end": {
                            "line": 143,
                            "column": 45
                          }
                        },
                        "name": "removeListeners"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4641,
                "end": 4689,
                "loc": {
                  "start": {
                    "line": 144,
                    "column": 1
                  },
                  "end": {
                    "line": 144,
                    "column": 49
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4641,
                  "end": 4688,
                  "loc": {
                    "start": {
                      "line": 144,
                      "column": 1
                    },
                    "end": {
                      "line": 144,
                      "column": 48
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4641,
                    "end": 4653,
                    "loc": {
                      "start": {
                        "line": 144,
                        "column": 1
                      },
                      "end": {
                        "line": 144,
                        "column": 13
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4641,
                      "end": 4648,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 1
                        },
                        "end": {
                          "line": 144,
                          "column": 8
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4649,
                      "end": 4653,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 9
                        },
                        "end": {
                          "line": 144,
                          "column": 13
                        }
                      },
                      "name": "data"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4657,
                    "end": 4688,
                    "loc": {
                      "start": {
                        "line": 144,
                        "column": 17
                      },
                      "end": {
                        "line": 144,
                        "column": 48
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4657,
                      "end": 4679,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 17
                        },
                        "end": {
                          "line": 144,
                          "column": 39
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4657,
                        "end": 4661,
                        "loc": {
                          "start": {
                            "line": 144,
                            "column": 17
                          },
                          "end": {
                            "line": 144,
                            "column": 21
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4662,
                        "end": 4679,
                        "loc": {
                          "start": {
                            "line": 144,
                            "column": 22
                          },
                          "end": {
                            "line": 144,
                            "column": 39
                          }
                        },
                        "name": "_destroyRecursive"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 4680,
                        "end": 4687,
                        "loc": {
                          "start": {
                            "line": 144,
                            "column": 40
                          },
                          "end": {
                            "line": 144,
                            "column": 47
                          }
                        },
                        "name": "options"
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "FunctionDeclaration",
      "start": 4693,
      "end": 5305,
      "loc": {
        "start": {
          "line": 147,
          "column": 0
        },
        "end": {
          "line": 163,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 4702,
        "end": 4718,
        "loc": {
          "start": {
            "line": 147,
            "column": 9
          },
          "end": {
            "line": 147,
            "column": 25
          }
        },
        "name": "updateReferences"
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 4719,
          "end": 4725,
          "loc": {
            "start": {
              "line": 147,
              "column": 26
            },
            "end": {
              "line": 147,
              "column": 32
            }
          },
          "name": "parent"
        },
        {
          "type": "Identifier",
          "start": 4727,
          "end": 4733,
          "loc": {
            "start": {
              "line": 147,
              "column": 34
            },
            "end": {
              "line": 147,
              "column": 40
            }
          },
          "name": "object"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 4735,
        "end": 5305,
        "loc": {
          "start": {
            "line": 147,
            "column": 42
          },
          "end": {
            "line": 163,
            "column": 1
          }
        },
        "body": [
          {
            "type": "IfStatement",
            "start": 4741,
            "end": 5284,
            "loc": {
              "start": {
                "line": 148,
                "column": 4
              },
              "end": {
                "line": 161,
                "column": 5
              }
            },
            "test": {
              "type": "LogicalExpression",
              "start": 4745,
              "end": 4817,
              "loc": {
                "start": {
                  "line": 148,
                  "column": 8
                },
                "end": {
                  "line": 148,
                  "column": 80
                }
              },
              "left": {
                "type": "LogicalExpression",
                "start": 4745,
                "end": 4802,
                "loc": {
                  "start": {
                    "line": 148,
                    "column": 8
                  },
                  "end": {
                    "line": 148,
                    "column": 65
                  }
                },
                "left": {
                  "type": "BinaryExpression",
                  "start": 4745,
                  "end": 4769,
                  "loc": {
                    "start": {
                      "line": 148,
                      "column": 8
                    },
                    "end": {
                      "line": 148,
                      "column": 32
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4745,
                    "end": 4758,
                    "loc": {
                      "start": {
                        "line": 148,
                        "column": 8
                      },
                      "end": {
                        "line": 148,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4745,
                      "end": 4751,
                      "loc": {
                        "start": {
                          "line": 148,
                          "column": 8
                        },
                        "end": {
                          "line": 148,
                          "column": 14
                        }
                      },
                      "name": "object"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4752,
                      "end": 4758,
                      "loc": {
                        "start": {
                          "line": 148,
                          "column": 15
                        },
                        "end": {
                          "line": 148,
                          "column": 21
                        }
                      },
                      "name": "parent"
                    },
                    "computed": false
                  },
                  "operator": "===",
                  "right": {
                    "type": "Identifier",
                    "start": 4763,
                    "end": 4769,
                    "loc": {
                      "start": {
                        "line": 148,
                        "column": 26
                      },
                      "end": {
                        "line": 148,
                        "column": 32
                      }
                    },
                    "name": "parent"
                  }
                },
                "operator": "&&",
                "right": {
                  "type": "BinaryExpression",
                  "start": 4773,
                  "end": 4802,
                  "loc": {
                    "start": {
                      "line": 148,
                      "column": 36
                    },
                    "end": {
                      "line": 148,
                      "column": 65
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 4773,
                    "end": 4779,
                    "loc": {
                      "start": {
                        "line": 148,
                        "column": 36
                      },
                      "end": {
                        "line": 148,
                        "column": 42
                      }
                    },
                    "name": "parent"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "MemberExpression",
                    "start": 4791,
                    "end": 4802,
                    "loc": {
                      "start": {
                        "line": 148,
                        "column": 54
                      },
                      "end": {
                        "line": 148,
                        "column": 65
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4791,
                      "end": 4796,
                      "loc": {
                        "start": {
                          "line": 148,
                          "column": 54
                        },
                        "end": {
                          "line": 148,
                          "column": 59
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4797,
                      "end": 4802,
                      "loc": {
                        "start": {
                          "line": 148,
                          "column": 60
                        },
                        "end": {
                          "line": 148,
                          "column": 65
                        }
                      },
                      "name": "Scene"
                    },
                    "computed": false
                  }
                }
              },
              "operator": "||",
              "right": {
                "type": "MemberExpression",
                "start": 4806,
                "end": 4817,
                "loc": {
                  "start": {
                    "line": 148,
                    "column": 69
                  },
                  "end": {
                    "line": 148,
                    "column": 80
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 4806,
                  "end": 4812,
                  "loc": {
                    "start": {
                      "line": 148,
                      "column": 69
                    },
                    "end": {
                      "line": 148,
                      "column": 75
                    }
                  },
                  "name": "parent"
                },
                "property": {
                  "type": "Identifier",
                  "start": 4813,
                  "end": 4817,
                  "loc": {
                    "start": {
                      "line": 148,
                      "column": 76
                    },
                    "end": {
                      "line": 148,
                      "column": 80
                    }
                  },
                  "name": "view"
                },
                "computed": false
              }
            },
            "consequent": {
              "type": "BlockStatement",
              "start": 4819,
              "end": 5113,
              "loc": {
                "start": {
                  "line": 148,
                  "column": 82
                },
                "end": {
                  "line": 155,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "ExpressionStatement",
                  "start": 4829,
                  "end": 5107,
                  "loc": {
                    "start": {
                      "line": 149,
                      "column": 8
                    },
                    "end": {
                      "line": 154,
                      "column": 11
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 4829,
                    "end": 5106,
                    "loc": {
                      "start": {
                        "line": 149,
                        "column": 8
                      },
                      "end": {
                        "line": 154,
                        "column": 10
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4829,
                      "end": 4844,
                      "loc": {
                        "start": {
                          "line": 149,
                          "column": 8
                        },
                        "end": {
                          "line": 149,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 4829,
                        "end": 4835,
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 8
                          },
                          "end": {
                            "line": 149,
                            "column": 14
                          }
                        },
                        "name": "object"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4836,
                        "end": 4844,
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 15
                          },
                          "end": {
                            "line": 149,
                            "column": 23
                          }
                        },
                        "name": "traverse"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ArrowFunctionExpression",
                        "start": 4845,
                        "end": 5105,
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 24
                          },
                          "end": {
                            "line": 154,
                            "column": 9
                          }
                        },
                        "id": null,
                        "generator": false,
                        "expression": false,
                        "async": false,
                        "params": [
                          {
                            "type": "Identifier",
                            "start": 4845,
                            "end": 4850,
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 24
                              },
                              "end": {
                                "line": 149,
                                "column": 29
                              }
                            },
                            "name": "child"
                          }
                        ],
                        "body": {
                          "type": "BlockStatement",
                          "start": 4854,
                          "end": 5105,
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 33
                            },
                            "end": {
                              "line": 154,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 4868,
                              "end": 4936,
                              "loc": {
                                "start": {
                                  "line": 150,
                                  "column": 12
                                },
                                "end": {
                                  "line": 150,
                                  "column": 80
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 4868,
                                "end": 4935,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 79
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 4868,
                                  "end": 4879,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4868,
                                    "end": 4873,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4874,
                                    "end": 4879,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 23
                                      }
                                    },
                                    "name": "scene"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "ConditionalExpression",
                                  "start": 4882,
                                  "end": 4935,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 79
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 4882,
                                    "end": 4911,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 55
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 4882,
                                      "end": 4888,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 32
                                        }
                                      },
                                      "name": "parent"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 4900,
                                      "end": 4911,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 55
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 4900,
                                        "end": 4905,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 49
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 4906,
                                        "end": 4911,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 55
                                          }
                                        },
                                        "name": "Scene"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "consequent": {
                                    "type": "Identifier",
                                    "start": 4914,
                                    "end": 4920,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 64
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "alternate": {
                                    "type": "MemberExpression",
                                    "start": 4923,
                                    "end": 4935,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 79
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 4923,
                                      "end": 4929,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 67
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 73
                                        }
                                      },
                                      "name": "parent"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 4930,
                                      "end": 4935,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 74
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 79
                                        }
                                      },
                                      "name": "scene"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 4949,
                              "end": 4974,
                              "loc": {
                                "start": {
                                  "line": 151,
                                  "column": 12
                                },
                                "end": {
                                  "line": 151,
                                  "column": 37
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 4949,
                                "end": 4973,
                                "loc": {
                                  "start": {
                                    "line": 151,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 151,
                                    "column": 36
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 4949,
                                  "end": 4959,
                                  "loc": {
                                    "start": {
                                      "line": 151,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 151,
                                      "column": 22
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4949,
                                    "end": 4954,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4955,
                                    "end": 4959,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 22
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 4962,
                                  "end": 4973,
                                  "loc": {
                                    "start": {
                                      "line": 151,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 151,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4962,
                                    "end": 4968,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 31
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4969,
                                    "end": 4973,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 36
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "computed": false
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 4987,
                              "end": 5016,
                              "loc": {
                                "start": {
                                  "line": 152,
                                  "column": 12
                                },
                                "end": {
                                  "line": 152,
                                  "column": 41
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 4987,
                                "end": 5015,
                                "loc": {
                                  "start": {
                                    "line": 152,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 152,
                                    "column": 40
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 4987,
                                  "end": 4999,
                                  "loc": {
                                    "start": {
                                      "line": 152,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 152,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4987,
                                    "end": 4992,
                                    "loc": {
                                      "start": {
                                        "line": 152,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 152,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4993,
                                    "end": 4999,
                                    "loc": {
                                      "start": {
                                        "line": 152,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 152,
                                        "column": 24
                                      }
                                    },
                                    "name": "canvas"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 5002,
                                  "end": 5015,
                                  "loc": {
                                    "start": {
                                      "line": 152,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 152,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5002,
                                    "end": 5008,
                                    "loc": {
                                      "start": {
                                        "line": 152,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 152,
                                        "column": 33
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5009,
                                    "end": 5015,
                                    "loc": {
                                      "start": {
                                        "line": 152,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 152,
                                        "column": 40
                                      }
                                    },
                                    "name": "canvas"
                                  },
                                  "computed": false
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5029,
                              "end": 5095,
                              "loc": {
                                "start": {
                                  "line": 153,
                                  "column": 12
                                },
                                "end": {
                                  "line": 153,
                                  "column": 78
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 5029,
                                "end": 5094,
                                "loc": {
                                  "start": {
                                    "line": 153,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 153,
                                    "column": 77
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5029,
                                  "end": 5039,
                                  "loc": {
                                    "start": {
                                      "line": 153,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 153,
                                      "column": 22
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5029,
                                    "end": 5034,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5035,
                                    "end": 5039,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 22
                                      }
                                    },
                                    "name": "emit"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 5040,
                                    "end": 5081,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 64
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 5040,
                                      "end": 5071,
                                      "loc": {
                                        "start": {
                                          "line": 153,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 153,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 5040,
                                        "end": 5061,
                                        "loc": {
                                          "start": {
                                            "line": 153,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 153,
                                            "column": 44
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 5040,
                                          "end": 5054,
                                          "loc": {
                                            "start": {
                                              "line": 153,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 153,
                                              "column": 37
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 5040,
                                            "end": 5045,
                                            "loc": {
                                              "start": {
                                                "line": 153,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 153,
                                                "column": 28
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5046,
                                            "end": 5054,
                                            "loc": {
                                              "start": {
                                                "line": 153,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 153,
                                                "column": 37
                                              }
                                            },
                                            "name": "Object3D"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5055,
                                          "end": 5061,
                                          "loc": {
                                            "start": {
                                              "line": 153,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 153,
                                              "column": 44
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5062,
                                        "end": 5071,
                                        "loc": {
                                          "start": {
                                            "line": 153,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 153,
                                            "column": 54
                                          }
                                        },
                                        "name": "Lifecycle"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5072,
                                      "end": 5081,
                                      "loc": {
                                        "start": {
                                          "line": 153,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 153,
                                          "column": 64
                                        }
                                      },
                                      "name": "ViewFound"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 5083,
                                    "end": 5093,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 76
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 5083,
                                      "end": 5088,
                                      "loc": {
                                        "start": {
                                          "line": 153,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 153,
                                          "column": 71
                                        }
                                      },
                                      "name": "child"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5089,
                                      "end": 5093,
                                      "loc": {
                                        "start": {
                                          "line": 153,
                                          "column": 72
                                        },
                                        "end": {
                                          "line": 153,
                                          "column": 76
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              ]
            },
            "alternate": {
              "type": "BlockStatement",
              "start": 5119,
              "end": 5284,
              "loc": {
                "start": {
                  "line": 155,
                  "column": 11
                },
                "end": {
                  "line": 161,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "ExpressionStatement",
                  "start": 5129,
                  "end": 5278,
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 8
                    },
                    "end": {
                      "line": 160,
                      "column": 11
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 5129,
                    "end": 5277,
                    "loc": {
                      "start": {
                        "line": 156,
                        "column": 8
                      },
                      "end": {
                        "line": 160,
                        "column": 10
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 5129,
                      "end": 5144,
                      "loc": {
                        "start": {
                          "line": 156,
                          "column": 8
                        },
                        "end": {
                          "line": 156,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5129,
                        "end": 5135,
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 8
                          },
                          "end": {
                            "line": 156,
                            "column": 14
                          }
                        },
                        "name": "object"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5136,
                        "end": 5144,
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 15
                          },
                          "end": {
                            "line": 156,
                            "column": 23
                          }
                        },
                        "name": "traverse"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ArrowFunctionExpression",
                        "start": 5145,
                        "end": 5276,
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 24
                          },
                          "end": {
                            "line": 160,
                            "column": 9
                          }
                        },
                        "id": null,
                        "generator": false,
                        "expression": false,
                        "async": false,
                        "params": [
                          {
                            "type": "Identifier",
                            "start": 5145,
                            "end": 5150,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 24
                              },
                              "end": {
                                "line": 156,
                                "column": 29
                              }
                            },
                            "name": "child"
                          }
                        ],
                        "body": {
                          "type": "BlockStatement",
                          "start": 5154,
                          "end": 5276,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 33
                            },
                            "end": {
                              "line": 160,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 5168,
                              "end": 5192,
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 12
                                },
                                "end": {
                                  "line": 157,
                                  "column": 36
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5168,
                                "end": 5191,
                                "loc": {
                                  "start": {
                                    "line": 157,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 157,
                                    "column": 35
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5168,
                                  "end": 5179,
                                  "loc": {
                                    "start": {
                                      "line": 157,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 157,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5168,
                                    "end": 5173,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5174,
                                    "end": 5179,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 23
                                      }
                                    },
                                    "name": "scene"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 5182,
                                  "end": 5191,
                                  "loc": {
                                    "start": {
                                      "line": 157,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 157,
                                      "column": 35
                                    }
                                  },
                                  "name": "undefined"
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5205,
                              "end": 5228,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 12
                                },
                                "end": {
                                  "line": 158,
                                  "column": 35
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5205,
                                "end": 5227,
                                "loc": {
                                  "start": {
                                    "line": 158,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 158,
                                    "column": 34
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5205,
                                  "end": 5215,
                                  "loc": {
                                    "start": {
                                      "line": 158,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 158,
                                      "column": 22
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5205,
                                    "end": 5210,
                                    "loc": {
                                      "start": {
                                        "line": 158,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 158,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5211,
                                    "end": 5215,
                                    "loc": {
                                      "start": {
                                        "line": 158,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 158,
                                        "column": 22
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 5218,
                                  "end": 5227,
                                  "loc": {
                                    "start": {
                                      "line": 158,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 158,
                                      "column": 34
                                    }
                                  },
                                  "name": "undefined"
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5241,
                              "end": 5266,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 12
                                },
                                "end": {
                                  "line": 159,
                                  "column": 37
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5241,
                                "end": 5265,
                                "loc": {
                                  "start": {
                                    "line": 159,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 159,
                                    "column": 36
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5241,
                                  "end": 5253,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5241,
                                    "end": 5246,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5247,
                                    "end": 5253,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 24
                                      }
                                    },
                                    "name": "canvas"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 5256,
                                  "end": 5265,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 36
                                    }
                                  },
                                  "name": "undefined"
                                }
                              }
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              ]
            }
          },
          {
            "type": "ReturnStatement",
            "start": 5289,
            "end": 5303,
            "loc": {
              "start": {
                "line": 162,
                "column": 4
              },
              "end": {
                "line": 162,
                "column": 18
              }
            },
            "argument": {
              "type": "Identifier",
              "start": 5296,
              "end": 5302,
              "loc": {
                "start": {
                  "line": 162,
                  "column": 11
                },
                "end": {
                  "line": 162,
                  "column": 17
                }
              },
              "name": "object"
            }
          }
        ]
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 5307,
      "end": 5992,
      "loc": {
        "start": {
          "line": 165,
          "column": 0
        },
        "end": {
          "line": 180,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 5307,
        "end": 5992,
        "loc": {
          "start": {
            "line": 165,
            "column": 0
          },
          "end": {
            "line": 180,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 5307,
          "end": 5340,
          "loc": {
            "start": {
              "line": 165,
              "column": 0
            },
            "end": {
              "line": 165,
              "column": 33
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 5307,
            "end": 5331,
            "loc": {
              "start": {
                "line": 165,
                "column": 0
              },
              "end": {
                "line": 165,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 5307,
              "end": 5321,
              "loc": {
                "start": {
                  "line": 165,
                  "column": 0
                },
                "end": {
                  "line": 165,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 5307,
                "end": 5312,
                "loc": {
                  "start": {
                    "line": 165,
                    "column": 0
                  },
                  "end": {
                    "line": 165,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 5313,
                "end": 5321,
                "loc": {
                  "start": {
                    "line": 165,
                    "column": 6
                  },
                  "end": {
                    "line": 165,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 5322,
              "end": 5331,
              "loc": {
                "start": {
                  "line": 165,
                  "column": 15
                },
                "end": {
                  "line": 165,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 5332,
            "end": 5340,
            "loc": {
              "start": {
                "line": 165,
                "column": 25
              },
              "end": {
                "line": 165,
                "column": 33
              }
            },
            "name": "addAsync"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 5343,
          "end": 5992,
          "loc": {
            "start": {
              "line": 165,
              "column": 36
            },
            "end": {
              "line": 180,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 5332,
            "end": 5340,
            "loc": {
              "start": {
                "line": 165,
                "column": 25
              },
              "end": {
                "line": 165,
                "column": 33
              }
            },
            "name": "addAsync"
          },
          "generator": false,
          "expression": false,
          "async": true,
          "params": [
            {
              "type": "Identifier",
              "start": 5358,
              "end": 5364,
              "loc": {
                "start": {
                  "line": 165,
                  "column": 51
                },
                "end": {
                  "line": 165,
                  "column": 57
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 5366,
            "end": 5992,
            "loc": {
              "start": {
                "line": 165,
                "column": 59
              },
              "end": {
                "line": 180,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 5372,
                "end": 5435,
                "loc": {
                  "start": {
                    "line": 166,
                    "column": 4
                  },
                  "end": {
                    "line": 166,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 5372,
                  "end": 5434,
                  "loc": {
                    "start": {
                      "line": 166,
                      "column": 4
                    },
                    "end": {
                      "line": 166,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 5372,
                    "end": 5378,
                    "loc": {
                      "start": {
                        "line": 166,
                        "column": 4
                      },
                      "end": {
                        "line": 166,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 5381,
                    "end": 5434,
                    "loc": {
                      "start": {
                        "line": 166,
                        "column": 13
                      },
                      "end": {
                        "line": 166,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 5381,
                      "end": 5401,
                      "loc": {
                        "start": {
                          "line": 166,
                          "column": 13
                        },
                        "end": {
                          "line": 166,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 5381,
                        "end": 5397,
                        "loc": {
                          "start": {
                            "line": 166,
                            "column": 13
                          },
                          "end": {
                            "line": 166,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5381,
                          "end": 5390,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 13
                            },
                            "end": {
                              "line": 166,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5391,
                          "end": 5397,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 23
                            },
                            "end": {
                              "line": 166,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 5400,
                        "end": 5401,
                        "loc": {
                          "start": {
                            "line": 166,
                            "column": 32
                          },
                          "end": {
                            "line": 166,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 5404,
                      "end": 5425,
                      "loc": {
                        "start": {
                          "line": 166,
                          "column": 36
                        },
                        "end": {
                          "line": 166,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 5404,
                        "end": 5414,
                        "loc": {
                          "start": {
                            "line": 166,
                            "column": 36
                          },
                          "end": {
                            "line": 166,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5404,
                          "end": 5409,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 36
                            },
                            "end": {
                              "line": 166,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5410,
                          "end": 5414,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 42
                            },
                            "end": {
                              "line": 166,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 5415,
                          "end": 5424,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 47
                            },
                            "end": {
                              "line": 166,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 5428,
                      "end": 5434,
                      "loc": {
                        "start": {
                          "line": 166,
                          "column": 60
                        },
                        "end": {
                          "line": 166,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 5440,
                "end": 5543,
                "loc": {
                  "start": {
                    "line": 167,
                    "column": 4
                  },
                  "end": {
                    "line": 169,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 5444,
                  "end": 5465,
                  "loc": {
                    "start": {
                      "line": 167,
                      "column": 8
                    },
                    "end": {
                      "line": 167,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 5444,
                    "end": 5457,
                    "loc": {
                      "start": {
                        "line": 167,
                        "column": 8
                      },
                      "end": {
                        "line": 167,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 5444,
                      "end": 5449,
                      "loc": {
                        "start": {
                          "line": 167,
                          "column": 8
                        },
                        "end": {
                          "line": 167,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 5450,
                      "end": 5457,
                      "loc": {
                        "start": {
                          "line": 167,
                          "column": 14
                        },
                        "end": {
                          "line": 167,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 5458,
                      "end": 5464,
                      "loc": {
                        "start": {
                          "line": 167,
                          "column": 22
                        },
                        "end": {
                          "line": 167,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 5467,
                  "end": 5543,
                  "loc": {
                    "start": {
                      "line": 167,
                      "column": 31
                    },
                    "end": {
                      "line": 169,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 5477,
                      "end": 5537,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 8
                        },
                        "end": {
                          "line": 168,
                          "column": 68
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 5484,
                        "end": 5536,
                        "loc": {
                          "start": {
                            "line": 168,
                            "column": 15
                          },
                          "end": {
                            "line": 168,
                            "column": 67
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5484,
                          "end": 5495,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 15
                            },
                            "end": {
                              "line": 168,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5484,
                            "end": 5491,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 15
                              },
                              "end": {
                                "line": 168,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5492,
                            "end": 5495,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 23
                              },
                              "end": {
                                "line": 168,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 5496,
                            "end": 5535,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 27
                              },
                              "end": {
                                "line": 168,
                                "column": 66
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5496,
                              "end": 5506,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 27
                                },
                                "end": {
                                  "line": 168,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5496,
                                "end": 5502,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5503,
                                "end": 5506,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 5507,
                                "end": 5534,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 65
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 5507,
                                    "end": 5511,
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 5515,
                                  "end": 5534,
                                  "loc": {
                                    "start": {
                                      "line": 168,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 168,
                                      "column": 65
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 5515,
                                    "end": 5528,
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5515,
                                      "end": 5519,
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5520,
                                      "end": 5528,
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 59
                                        }
                                      },
                                      "name": "addAsync"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 5529,
                                      "end": 5533,
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 64
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 5549,
                "end": 5990,
                "loc": {
                  "start": {
                    "line": 171,
                    "column": 4
                  },
                  "end": {
                    "line": 179,
                    "column": 5
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 5553,
                  "end": 5604,
                  "loc": {
                    "start": {
                      "line": 171,
                      "column": 8
                    },
                    "end": {
                      "line": 171,
                      "column": 59
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 5553,
                    "end": 5568,
                    "loc": {
                      "start": {
                        "line": 171,
                        "column": 8
                      },
                      "end": {
                        "line": 171,
                        "column": 23
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 5553,
                      "end": 5559,
                      "loc": {
                        "start": {
                          "line": 171,
                          "column": 8
                        },
                        "end": {
                          "line": 171,
                          "column": 14
                        }
                      },
                      "name": "object"
                    },
                    "operator": "!==",
                    "right": {
                      "type": "ThisExpression",
                      "start": 5564,
                      "end": 5568,
                      "loc": {
                        "start": {
                          "line": 171,
                          "column": 19
                        },
                        "end": {
                          "line": 171,
                          "column": 23
                        }
                      }
                    }
                  },
                  "operator": "&&",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 5572,
                    "end": 5604,
                    "loc": {
                      "start": {
                        "line": 171,
                        "column": 27
                      },
                      "end": {
                        "line": 171,
                        "column": 59
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 5572,
                      "end": 5578,
                      "loc": {
                        "start": {
                          "line": 171,
                          "column": 27
                        },
                        "end": {
                          "line": 171,
                          "column": 33
                        }
                      },
                      "name": "object"
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "MemberExpression",
                      "start": 5590,
                      "end": 5604,
                      "loc": {
                        "start": {
                          "line": 171,
                          "column": 45
                        },
                        "end": {
                          "line": 171,
                          "column": 59
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5590,
                        "end": 5595,
                        "loc": {
                          "start": {
                            "line": 171,
                            "column": 45
                          },
                          "end": {
                            "line": 171,
                            "column": 50
                          }
                        },
                        "name": "THREE"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5596,
                        "end": 5604,
                        "loc": {
                          "start": {
                            "line": 171,
                            "column": 51
                          },
                          "end": {
                            "line": 171,
                            "column": 59
                          }
                        },
                        "name": "Object3D"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 5606,
                  "end": 5990,
                  "loc": {
                    "start": {
                      "line": 171,
                      "column": 61
                    },
                    "end": {
                      "line": 179,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 5616,
                      "end": 5689,
                      "loc": {
                        "start": {
                          "line": 172,
                          "column": 8
                        },
                        "end": {
                          "line": 173,
                          "column": 52
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 5620,
                        "end": 5635,
                        "loc": {
                          "start": {
                            "line": 172,
                            "column": 12
                          },
                          "end": {
                            "line": 172,
                            "column": 27
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 5621,
                          "end": 5635,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 13
                            },
                            "end": {
                              "line": 172,
                              "column": 27
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "MemberExpression",
                            "start": 5622,
                            "end": 5635,
                            "loc": {
                              "start": {
                                "line": 172,
                                "column": 14
                              },
                              "end": {
                                "line": 172,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5622,
                              "end": 5628,
                              "loc": {
                                "start": {
                                  "line": 172,
                                  "column": 14
                                },
                                "end": {
                                  "line": 172,
                                  "column": 20
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5629,
                              "end": 5635,
                              "loc": {
                                "start": {
                                  "line": 172,
                                  "column": 21
                                },
                                "end": {
                                  "line": 172,
                                  "column": 27
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5649,
                        "end": 5689,
                        "loc": {
                          "start": {
                            "line": 173,
                            "column": 12
                          },
                          "end": {
                            "line": 173,
                            "column": 52
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 5649,
                          "end": 5688,
                          "loc": {
                            "start": {
                              "line": 173,
                              "column": 12
                            },
                            "end": {
                              "line": 173,
                              "column": 51
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 5655,
                            "end": 5688,
                            "loc": {
                              "start": {
                                "line": 173,
                                "column": 18
                              },
                              "end": {
                                "line": 173,
                                "column": 51
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5655,
                              "end": 5680,
                              "loc": {
                                "start": {
                                  "line": 173,
                                  "column": 18
                                },
                                "end": {
                                  "line": 173,
                                  "column": 43
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 5655,
                                "end": 5668,
                                "loc": {
                                  "start": {
                                    "line": 173,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 173,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5655,
                                  "end": 5661,
                                  "loc": {
                                    "start": {
                                      "line": 173,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 173,
                                      "column": 24
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5662,
                                  "end": 5668,
                                  "loc": {
                                    "start": {
                                      "line": 173,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 173,
                                      "column": 31
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5669,
                                "end": 5680,
                                "loc": {
                                  "start": {
                                    "line": 173,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 173,
                                    "column": 43
                                  }
                                },
                                "name": "removeAsync"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 5681,
                                "end": 5687,
                                "loc": {
                                  "start": {
                                    "line": 173,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 173,
                                    "column": 50
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5698,
                      "end": 5719,
                      "loc": {
                        "start": {
                          "line": 174,
                          "column": 8
                        },
                        "end": {
                          "line": 174,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 5698,
                        "end": 5718,
                        "loc": {
                          "start": {
                            "line": 174,
                            "column": 8
                          },
                          "end": {
                            "line": 174,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 5698,
                          "end": 5711,
                          "loc": {
                            "start": {
                              "line": 174,
                              "column": 8
                            },
                            "end": {
                              "line": 174,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5698,
                            "end": 5704,
                            "loc": {
                              "start": {
                                "line": 174,
                                "column": 8
                              },
                              "end": {
                                "line": 174,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5705,
                            "end": 5711,
                            "loc": {
                              "start": {
                                "line": 174,
                                "column": 15
                              },
                              "end": {
                                "line": 174,
                                "column": 21
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ThisExpression",
                          "start": 5714,
                          "end": 5718,
                          "loc": {
                            "start": {
                              "line": 174,
                              "column": 24
                            },
                            "end": {
                              "line": 174,
                              "column": 28
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5728,
                      "end": 5779,
                      "loc": {
                        "start": {
                          "line": 175,
                          "column": 8
                        },
                        "end": {
                          "line": 175,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 5728,
                        "end": 5778,
                        "loc": {
                          "start": {
                            "line": 175,
                            "column": 8
                          },
                          "end": {
                            "line": 175,
                            "column": 58
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5728,
                          "end": 5746,
                          "loc": {
                            "start": {
                              "line": 175,
                              "column": 8
                            },
                            "end": {
                              "line": 175,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 5728,
                            "end": 5741,
                            "loc": {
                              "start": {
                                "line": 175,
                                "column": 8
                              },
                              "end": {
                                "line": 175,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5728,
                              "end": 5732,
                              "loc": {
                                "start": {
                                  "line": 175,
                                  "column": 8
                                },
                                "end": {
                                  "line": 175,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5733,
                              "end": 5741,
                              "loc": {
                                "start": {
                                  "line": 175,
                                  "column": 13
                                },
                                "end": {
                                  "line": 175,
                                  "column": 21
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5742,
                            "end": 5746,
                            "loc": {
                              "start": {
                                "line": 175,
                                "column": 22
                              },
                              "end": {
                                "line": 175,
                                "column": 26
                              }
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 5747,
                            "end": 5777,
                            "loc": {
                              "start": {
                                "line": 175,
                                "column": 27
                              },
                              "end": {
                                "line": 175,
                                "column": 57
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 5747,
                              "end": 5763,
                              "loc": {
                                "start": {
                                  "line": 175,
                                  "column": 27
                                },
                                "end": {
                                  "line": 175,
                                  "column": 43
                                }
                              },
                              "name": "updateReferences"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 5764,
                                "end": 5768,
                                "loc": {
                                  "start": {
                                    "line": 175,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 48
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 5770,
                                "end": 5776,
                                "loc": {
                                  "start": {
                                    "line": 175,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 56
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5788,
                      "end": 5860,
                      "loc": {
                        "start": {
                          "line": 176,
                          "column": 8
                        },
                        "end": {
                          "line": 176,
                          "column": 80
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 5788,
                        "end": 5859,
                        "loc": {
                          "start": {
                            "line": 176,
                            "column": 8
                          },
                          "end": {
                            "line": 176,
                            "column": 79
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 5794,
                          "end": 5859,
                          "loc": {
                            "start": {
                              "line": 176,
                              "column": 14
                            },
                            "end": {
                              "line": 176,
                              "column": 79
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5794,
                            "end": 5803,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 14
                              },
                              "end": {
                                "line": 176,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5794,
                              "end": 5798,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 14
                                },
                                "end": {
                                  "line": 176,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5799,
                              "end": 5803,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 19
                                },
                                "end": {
                                  "line": 176,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 5804,
                              "end": 5839,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 24
                                },
                                "end": {
                                  "line": 176,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 5804,
                                "end": 5828,
                                "loc": {
                                  "start": {
                                    "line": 176,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 176,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 5804,
                                  "end": 5818,
                                  "loc": {
                                    "start": {
                                      "line": 176,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 176,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5804,
                                    "end": 5811,
                                    "loc": {
                                      "start": {
                                        "line": 176,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 176,
                                        "column": 31
                                      }
                                    },
                                    "name": "Object3"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5812,
                                    "end": 5818,
                                    "loc": {
                                      "start": {
                                        "line": 176,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 176,
                                        "column": 38
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5819,
                                  "end": 5828,
                                  "loc": {
                                    "start": {
                                      "line": 176,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 176,
                                      "column": 48
                                    }
                                  },
                                  "name": "Lifecycle"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5829,
                                "end": 5839,
                                "loc": {
                                  "start": {
                                    "line": 176,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 176,
                                    "column": 59
                                  }
                                },
                                "name": "ChildAdded"
                              },
                              "computed": false
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 5841,
                              "end": 5858,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 61
                                },
                                "end": {
                                  "line": 176,
                                  "column": 78
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 5843,
                                  "end": 5856,
                                  "loc": {
                                    "start": {
                                      "line": 176,
                                      "column": 63
                                    },
                                    "end": {
                                      "line": 176,
                                      "column": 76
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 5843,
                                    "end": 5848,
                                    "loc": {
                                      "start": {
                                        "line": 176,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 176,
                                        "column": 68
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "value": {
                                    "type": "Identifier",
                                    "start": 5850,
                                    "end": 5856,
                                    "loc": {
                                      "start": {
                                        "line": 176,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 176,
                                        "column": 76
                                      }
                                    },
                                    "name": "object"
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5869,
                      "end": 5937,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 8
                        },
                        "end": {
                          "line": 177,
                          "column": 76
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 5869,
                        "end": 5936,
                        "loc": {
                          "start": {
                            "line": 177,
                            "column": 8
                          },
                          "end": {
                            "line": 177,
                            "column": 75
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 5875,
                          "end": 5936,
                          "loc": {
                            "start": {
                              "line": 177,
                              "column": 14
                            },
                            "end": {
                              "line": 177,
                              "column": 75
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5875,
                            "end": 5886,
                            "loc": {
                              "start": {
                                "line": 177,
                                "column": 14
                              },
                              "end": {
                                "line": 177,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5875,
                              "end": 5881,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 14
                                },
                                "end": {
                                  "line": 177,
                                  "column": 20
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5882,
                              "end": 5886,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 21
                                },
                                "end": {
                                  "line": 177,
                                  "column": 25
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 5887,
                              "end": 5917,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 26
                                },
                                "end": {
                                  "line": 177,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 5887,
                                "end": 5911,
                                "loc": {
                                  "start": {
                                    "line": 177,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 177,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 5887,
                                  "end": 5901,
                                  "loc": {
                                    "start": {
                                      "line": 177,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 177,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5887,
                                    "end": 5894,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 177,
                                        "column": 33
                                      }
                                    },
                                    "name": "Object3"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5895,
                                    "end": 5901,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 177,
                                        "column": 40
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5902,
                                  "end": 5911,
                                  "loc": {
                                    "start": {
                                      "line": 177,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 177,
                                      "column": 50
                                    }
                                  },
                                  "name": "Lifecycle"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5912,
                                "end": 5917,
                                "loc": {
                                  "start": {
                                    "line": 177,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 177,
                                    "column": 56
                                  }
                                },
                                "name": "Added"
                              },
                              "computed": false
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 5919,
                              "end": 5935,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 58
                                },
                                "end": {
                                  "line": 177,
                                  "column": 74
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 5921,
                                  "end": 5933,
                                  "loc": {
                                    "start": {
                                      "line": 177,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 177,
                                      "column": 72
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 5921,
                                    "end": 5927,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 177,
                                        "column": 66
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "value": {
                                    "type": "ThisExpression",
                                    "start": 5929,
                                    "end": 5933,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 68
                                      },
                                      "end": {
                                        "line": 177,
                                        "column": 72
                                      }
                                    }
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5946,
                      "end": 5984,
                      "loc": {
                        "start": {
                          "line": 178,
                          "column": 8
                        },
                        "end": {
                          "line": 178,
                          "column": 46
                        }
                      },
                      "expression": {
                        "type": "LogicalExpression",
                        "start": 5946,
                        "end": 5983,
                        "loc": {
                          "start": {
                            "line": 178,
                            "column": 8
                          },
                          "end": {
                            "line": 178,
                            "column": 45
                          }
                        },
                        "left": {
                          "type": "UnaryExpression",
                          "start": 5946,
                          "end": 5957,
                          "loc": {
                            "start": {
                              "line": 178,
                              "column": 8
                            },
                            "end": {
                              "line": 178,
                              "column": 19
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 5947,
                            "end": 5957,
                            "loc": {
                              "start": {
                                "line": 178,
                                "column": 9
                              },
                              "end": {
                                "line": 178,
                                "column": 19
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 5948,
                              "end": 5957,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 10
                                },
                                "end": {
                                  "line": 178,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5948,
                                "end": 5952,
                                "loc": {
                                  "start": {
                                    "line": 178,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 178,
                                    "column": 14
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5953,
                                "end": 5957,
                                "loc": {
                                  "start": {
                                    "line": 178,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 178,
                                    "column": 19
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            }
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "CallExpression",
                          "start": 5961,
                          "end": 5983,
                          "loc": {
                            "start": {
                              "line": 178,
                              "column": 23
                            },
                            "end": {
                              "line": 178,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5961,
                            "end": 5981,
                            "loc": {
                              "start": {
                                "line": 178,
                                "column": 23
                              },
                              "end": {
                                "line": 178,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5961,
                              "end": 5970,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 23
                                },
                                "end": {
                                  "line": 178,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5961,
                                "end": 5965,
                                "loc": {
                                  "start": {
                                    "line": 178,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 178,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5966,
                                "end": 5970,
                                "loc": {
                                  "start": {
                                    "line": 178,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 178,
                                    "column": 32
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5971,
                              "end": 5981,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 33
                                },
                                "end": {
                                  "line": 178,
                                  "column": 43
                                }
                              },
                              "name": "invalidate"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 5994,
      "end": 6640,
      "loc": {
        "start": {
          "line": 182,
          "column": 0
        },
        "end": {
          "line": 197,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 5994,
        "end": 6640,
        "loc": {
          "start": {
            "line": 182,
            "column": 0
          },
          "end": {
            "line": 197,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 5994,
          "end": 6022,
          "loc": {
            "start": {
              "line": 182,
              "column": 0
            },
            "end": {
              "line": 182,
              "column": 28
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 5994,
            "end": 6018,
            "loc": {
              "start": {
                "line": 182,
                "column": 0
              },
              "end": {
                "line": 182,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 5994,
              "end": 6008,
              "loc": {
                "start": {
                  "line": 182,
                  "column": 0
                },
                "end": {
                  "line": 182,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 5994,
                "end": 5999,
                "loc": {
                  "start": {
                    "line": 182,
                    "column": 0
                  },
                  "end": {
                    "line": 182,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 6000,
                "end": 6008,
                "loc": {
                  "start": {
                    "line": 182,
                    "column": 6
                  },
                  "end": {
                    "line": 182,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 6009,
              "end": 6018,
              "loc": {
                "start": {
                  "line": 182,
                  "column": 15
                },
                "end": {
                  "line": 182,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 6019,
            "end": 6022,
            "loc": {
              "start": {
                "line": 182,
                "column": 25
              },
              "end": {
                "line": 182,
                "column": 28
              }
            },
            "name": "add"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 6025,
          "end": 6640,
          "loc": {
            "start": {
              "line": 182,
              "column": 31
            },
            "end": {
              "line": 197,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 6019,
            "end": 6022,
            "loc": {
              "start": {
                "line": 182,
                "column": 25
              },
              "end": {
                "line": 182,
                "column": 28
              }
            },
            "name": "add"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 6034,
              "end": 6040,
              "loc": {
                "start": {
                  "line": 182,
                  "column": 40
                },
                "end": {
                  "line": 182,
                  "column": 46
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 6042,
            "end": 6640,
            "loc": {
              "start": {
                "line": 182,
                "column": 48
              },
              "end": {
                "line": 197,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 6048,
                "end": 6111,
                "loc": {
                  "start": {
                    "line": 183,
                    "column": 4
                  },
                  "end": {
                    "line": 183,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 6048,
                  "end": 6110,
                  "loc": {
                    "start": {
                      "line": 183,
                      "column": 4
                    },
                    "end": {
                      "line": 183,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 6048,
                    "end": 6054,
                    "loc": {
                      "start": {
                        "line": 183,
                        "column": 4
                      },
                      "end": {
                        "line": 183,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 6057,
                    "end": 6110,
                    "loc": {
                      "start": {
                        "line": 183,
                        "column": 13
                      },
                      "end": {
                        "line": 183,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 6057,
                      "end": 6077,
                      "loc": {
                        "start": {
                          "line": 183,
                          "column": 13
                        },
                        "end": {
                          "line": 183,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 6057,
                        "end": 6073,
                        "loc": {
                          "start": {
                            "line": 183,
                            "column": 13
                          },
                          "end": {
                            "line": 183,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6057,
                          "end": 6066,
                          "loc": {
                            "start": {
                              "line": 183,
                              "column": 13
                            },
                            "end": {
                              "line": 183,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6067,
                          "end": 6073,
                          "loc": {
                            "start": {
                              "line": 183,
                              "column": 23
                            },
                            "end": {
                              "line": 183,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 6076,
                        "end": 6077,
                        "loc": {
                          "start": {
                            "line": 183,
                            "column": 32
                          },
                          "end": {
                            "line": 183,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 6080,
                      "end": 6101,
                      "loc": {
                        "start": {
                          "line": 183,
                          "column": 36
                        },
                        "end": {
                          "line": 183,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 6080,
                        "end": 6090,
                        "loc": {
                          "start": {
                            "line": 183,
                            "column": 36
                          },
                          "end": {
                            "line": 183,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6080,
                          "end": 6085,
                          "loc": {
                            "start": {
                              "line": 183,
                              "column": 36
                            },
                            "end": {
                              "line": 183,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6086,
                          "end": 6090,
                          "loc": {
                            "start": {
                              "line": 183,
                              "column": 42
                            },
                            "end": {
                              "line": 183,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 6091,
                          "end": 6100,
                          "loc": {
                            "start": {
                              "line": 183,
                              "column": 47
                            },
                            "end": {
                              "line": 183,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 6104,
                      "end": 6110,
                      "loc": {
                        "start": {
                          "line": 183,
                          "column": 60
                        },
                        "end": {
                          "line": 183,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 6116,
                "end": 6214,
                "loc": {
                  "start": {
                    "line": 184,
                    "column": 4
                  },
                  "end": {
                    "line": 186,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 6120,
                  "end": 6141,
                  "loc": {
                    "start": {
                      "line": 184,
                      "column": 8
                    },
                    "end": {
                      "line": 184,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 6120,
                    "end": 6133,
                    "loc": {
                      "start": {
                        "line": 184,
                        "column": 8
                      },
                      "end": {
                        "line": 184,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 6120,
                      "end": 6125,
                      "loc": {
                        "start": {
                          "line": 184,
                          "column": 8
                        },
                        "end": {
                          "line": 184,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6126,
                      "end": 6133,
                      "loc": {
                        "start": {
                          "line": 184,
                          "column": 14
                        },
                        "end": {
                          "line": 184,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 6134,
                      "end": 6140,
                      "loc": {
                        "start": {
                          "line": 184,
                          "column": 22
                        },
                        "end": {
                          "line": 184,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6143,
                  "end": 6214,
                  "loc": {
                    "start": {
                      "line": 184,
                      "column": 31
                    },
                    "end": {
                      "line": 186,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 6153,
                      "end": 6208,
                      "loc": {
                        "start": {
                          "line": 185,
                          "column": 8
                        },
                        "end": {
                          "line": 185,
                          "column": 63
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6160,
                        "end": 6207,
                        "loc": {
                          "start": {
                            "line": 185,
                            "column": 15
                          },
                          "end": {
                            "line": 185,
                            "column": 62
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6160,
                          "end": 6171,
                          "loc": {
                            "start": {
                              "line": 185,
                              "column": 15
                            },
                            "end": {
                              "line": 185,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6160,
                            "end": 6167,
                            "loc": {
                              "start": {
                                "line": 185,
                                "column": 15
                              },
                              "end": {
                                "line": 185,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6168,
                            "end": 6171,
                            "loc": {
                              "start": {
                                "line": 185,
                                "column": 23
                              },
                              "end": {
                                "line": 185,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6172,
                            "end": 6206,
                            "loc": {
                              "start": {
                                "line": 185,
                                "column": 27
                              },
                              "end": {
                                "line": 185,
                                "column": 61
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6172,
                              "end": 6182,
                              "loc": {
                                "start": {
                                  "line": 185,
                                  "column": 27
                                },
                                "end": {
                                  "line": 185,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6172,
                                "end": 6178,
                                "loc": {
                                  "start": {
                                    "line": 185,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 185,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6179,
                                "end": 6182,
                                "loc": {
                                  "start": {
                                    "line": 185,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 185,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 6183,
                                "end": 6205,
                                "loc": {
                                  "start": {
                                    "line": 185,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 185,
                                    "column": 60
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 6183,
                                    "end": 6187,
                                    "loc": {
                                      "start": {
                                        "line": 185,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 185,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 6191,
                                  "end": 6205,
                                  "loc": {
                                    "start": {
                                      "line": 185,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 185,
                                      "column": 60
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6191,
                                    "end": 6199,
                                    "loc": {
                                      "start": {
                                        "line": 185,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 185,
                                        "column": 54
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6191,
                                      "end": 6195,
                                      "loc": {
                                        "start": {
                                          "line": 185,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 185,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6196,
                                      "end": 6199,
                                      "loc": {
                                        "start": {
                                          "line": 185,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 185,
                                          "column": 54
                                        }
                                      },
                                      "name": "add"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 6200,
                                      "end": 6204,
                                      "loc": {
                                        "start": {
                                          "line": 185,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 185,
                                          "column": 59
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 6220,
                "end": 6638,
                "loc": {
                  "start": {
                    "line": 188,
                    "column": 4
                  },
                  "end": {
                    "line": 196,
                    "column": 5
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 6224,
                  "end": 6275,
                  "loc": {
                    "start": {
                      "line": 188,
                      "column": 8
                    },
                    "end": {
                      "line": 188,
                      "column": 59
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 6224,
                    "end": 6239,
                    "loc": {
                      "start": {
                        "line": 188,
                        "column": 8
                      },
                      "end": {
                        "line": 188,
                        "column": 23
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 6224,
                      "end": 6230,
                      "loc": {
                        "start": {
                          "line": 188,
                          "column": 8
                        },
                        "end": {
                          "line": 188,
                          "column": 14
                        }
                      },
                      "name": "object"
                    },
                    "operator": "!==",
                    "right": {
                      "type": "ThisExpression",
                      "start": 6235,
                      "end": 6239,
                      "loc": {
                        "start": {
                          "line": 188,
                          "column": 19
                        },
                        "end": {
                          "line": 188,
                          "column": 23
                        }
                      }
                    }
                  },
                  "operator": "&&",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 6243,
                    "end": 6275,
                    "loc": {
                      "start": {
                        "line": 188,
                        "column": 27
                      },
                      "end": {
                        "line": 188,
                        "column": 59
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 6243,
                      "end": 6249,
                      "loc": {
                        "start": {
                          "line": 188,
                          "column": 27
                        },
                        "end": {
                          "line": 188,
                          "column": 33
                        }
                      },
                      "name": "object"
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "MemberExpression",
                      "start": 6261,
                      "end": 6275,
                      "loc": {
                        "start": {
                          "line": 188,
                          "column": 45
                        },
                        "end": {
                          "line": 188,
                          "column": 59
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 6261,
                        "end": 6266,
                        "loc": {
                          "start": {
                            "line": 188,
                            "column": 45
                          },
                          "end": {
                            "line": 188,
                            "column": 50
                          }
                        },
                        "name": "THREE"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6267,
                        "end": 6275,
                        "loc": {
                          "start": {
                            "line": 188,
                            "column": 51
                          },
                          "end": {
                            "line": 188,
                            "column": 59
                          }
                        },
                        "name": "Object3D"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6277,
                  "end": 6638,
                  "loc": {
                    "start": {
                      "line": 188,
                      "column": 61
                    },
                    "end": {
                      "line": 196,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 6287,
                      "end": 6349,
                      "loc": {
                        "start": {
                          "line": 189,
                          "column": 8
                        },
                        "end": {
                          "line": 190,
                          "column": 41
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 6291,
                        "end": 6306,
                        "loc": {
                          "start": {
                            "line": 189,
                            "column": 12
                          },
                          "end": {
                            "line": 189,
                            "column": 27
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 6292,
                          "end": 6306,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 13
                            },
                            "end": {
                              "line": 189,
                              "column": 27
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "MemberExpression",
                            "start": 6293,
                            "end": 6306,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 14
                              },
                              "end": {
                                "line": 189,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 6293,
                              "end": 6299,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 14
                                },
                                "end": {
                                  "line": 189,
                                  "column": 20
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6300,
                              "end": 6306,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 21
                                },
                                "end": {
                                  "line": 189,
                                  "column": 27
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 6320,
                        "end": 6349,
                        "loc": {
                          "start": {
                            "line": 190,
                            "column": 12
                          },
                          "end": {
                            "line": 190,
                            "column": 41
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 6320,
                          "end": 6348,
                          "loc": {
                            "start": {
                              "line": 190,
                              "column": 12
                            },
                            "end": {
                              "line": 190,
                              "column": 40
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6320,
                            "end": 6340,
                            "loc": {
                              "start": {
                                "line": 190,
                                "column": 12
                              },
                              "end": {
                                "line": 190,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6320,
                              "end": 6333,
                              "loc": {
                                "start": {
                                  "line": 190,
                                  "column": 12
                                },
                                "end": {
                                  "line": 190,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6320,
                                "end": 6326,
                                "loc": {
                                  "start": {
                                    "line": 190,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 190,
                                    "column": 18
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6327,
                                "end": 6333,
                                "loc": {
                                  "start": {
                                    "line": 190,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 190,
                                    "column": 25
                                  }
                                },
                                "name": "parent"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6334,
                              "end": 6340,
                              "loc": {
                                "start": {
                                  "line": 190,
                                  "column": 26
                                },
                                "end": {
                                  "line": 190,
                                  "column": 32
                                }
                              },
                              "name": "remove"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 6341,
                              "end": 6347,
                              "loc": {
                                "start": {
                                  "line": 190,
                                  "column": 33
                                },
                                "end": {
                                  "line": 190,
                                  "column": 39
                                }
                              },
                              "name": "object"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6358,
                      "end": 6379,
                      "loc": {
                        "start": {
                          "line": 191,
                          "column": 8
                        },
                        "end": {
                          "line": 191,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 6358,
                        "end": 6378,
                        "loc": {
                          "start": {
                            "line": 191,
                            "column": 8
                          },
                          "end": {
                            "line": 191,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 6358,
                          "end": 6371,
                          "loc": {
                            "start": {
                              "line": 191,
                              "column": 8
                            },
                            "end": {
                              "line": 191,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6358,
                            "end": 6364,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 8
                              },
                              "end": {
                                "line": 191,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6365,
                            "end": 6371,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 15
                              },
                              "end": {
                                "line": 191,
                                "column": 21
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ThisExpression",
                          "start": 6374,
                          "end": 6378,
                          "loc": {
                            "start": {
                              "line": 191,
                              "column": 24
                            },
                            "end": {
                              "line": 191,
                              "column": 28
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6388,
                      "end": 6439,
                      "loc": {
                        "start": {
                          "line": 192,
                          "column": 8
                        },
                        "end": {
                          "line": 192,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6388,
                        "end": 6438,
                        "loc": {
                          "start": {
                            "line": 192,
                            "column": 8
                          },
                          "end": {
                            "line": 192,
                            "column": 58
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6388,
                          "end": 6406,
                          "loc": {
                            "start": {
                              "line": 192,
                              "column": 8
                            },
                            "end": {
                              "line": 192,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 6388,
                            "end": 6401,
                            "loc": {
                              "start": {
                                "line": 192,
                                "column": 8
                              },
                              "end": {
                                "line": 192,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6388,
                              "end": 6392,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 8
                                },
                                "end": {
                                  "line": 192,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6393,
                              "end": 6401,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 13
                                },
                                "end": {
                                  "line": 192,
                                  "column": 21
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6402,
                            "end": 6406,
                            "loc": {
                              "start": {
                                "line": 192,
                                "column": 22
                              },
                              "end": {
                                "line": 192,
                                "column": 26
                              }
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6407,
                            "end": 6437,
                            "loc": {
                              "start": {
                                "line": 192,
                                "column": 27
                              },
                              "end": {
                                "line": 192,
                                "column": 57
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 6407,
                              "end": 6423,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 27
                                },
                                "end": {
                                  "line": 192,
                                  "column": 43
                                }
                              },
                              "name": "updateReferences"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 6424,
                                "end": 6428,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 48
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 6430,
                                "end": 6436,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 56
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6448,
                      "end": 6514,
                      "loc": {
                        "start": {
                          "line": 193,
                          "column": 8
                        },
                        "end": {
                          "line": 193,
                          "column": 74
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6448,
                        "end": 6513,
                        "loc": {
                          "start": {
                            "line": 193,
                            "column": 8
                          },
                          "end": {
                            "line": 193,
                            "column": 73
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6448,
                          "end": 6457,
                          "loc": {
                            "start": {
                              "line": 193,
                              "column": 8
                            },
                            "end": {
                              "line": 193,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6448,
                            "end": 6452,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 8
                              },
                              "end": {
                                "line": 193,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6453,
                            "end": 6457,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 13
                              },
                              "end": {
                                "line": 193,
                                "column": 17
                              }
                            },
                            "name": "emit"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 6458,
                            "end": 6493,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 18
                              },
                              "end": {
                                "line": 193,
                                "column": 53
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6458,
                              "end": 6482,
                              "loc": {
                                "start": {
                                  "line": 193,
                                  "column": 18
                                },
                                "end": {
                                  "line": 193,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6458,
                                "end": 6472,
                                "loc": {
                                  "start": {
                                    "line": 193,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 193,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6458,
                                  "end": 6465,
                                  "loc": {
                                    "start": {
                                      "line": 193,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 193,
                                      "column": 25
                                    }
                                  },
                                  "name": "Object3"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6466,
                                  "end": 6472,
                                  "loc": {
                                    "start": {
                                      "line": 193,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 193,
                                      "column": 32
                                    }
                                  },
                                  "name": "Events"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6473,
                                "end": 6482,
                                "loc": {
                                  "start": {
                                    "line": 193,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 193,
                                    "column": 42
                                  }
                                },
                                "name": "Lifecycle"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6483,
                              "end": 6493,
                              "loc": {
                                "start": {
                                  "line": 193,
                                  "column": 43
                                },
                                "end": {
                                  "line": 193,
                                  "column": 53
                                }
                              },
                              "name": "ChildAdded"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 6495,
                            "end": 6512,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 55
                              },
                              "end": {
                                "line": 193,
                                "column": 72
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 6497,
                                "end": 6510,
                                "loc": {
                                  "start": {
                                    "line": 193,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 193,
                                    "column": 70
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 6497,
                                  "end": 6502,
                                  "loc": {
                                    "start": {
                                      "line": 193,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 193,
                                      "column": 62
                                    }
                                  },
                                  "name": "child"
                                },
                                "value": {
                                  "type": "Identifier",
                                  "start": 6504,
                                  "end": 6510,
                                  "loc": {
                                    "start": {
                                      "line": 193,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 193,
                                      "column": 70
                                    }
                                  },
                                  "name": "object"
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6523,
                      "end": 6585,
                      "loc": {
                        "start": {
                          "line": 194,
                          "column": 8
                        },
                        "end": {
                          "line": 194,
                          "column": 70
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6523,
                        "end": 6584,
                        "loc": {
                          "start": {
                            "line": 194,
                            "column": 8
                          },
                          "end": {
                            "line": 194,
                            "column": 69
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6523,
                          "end": 6534,
                          "loc": {
                            "start": {
                              "line": 194,
                              "column": 8
                            },
                            "end": {
                              "line": 194,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6523,
                            "end": 6529,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 8
                              },
                              "end": {
                                "line": 194,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6530,
                            "end": 6534,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 15
                              },
                              "end": {
                                "line": 194,
                                "column": 19
                              }
                            },
                            "name": "emit"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 6535,
                            "end": 6565,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 20
                              },
                              "end": {
                                "line": 194,
                                "column": 50
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6535,
                              "end": 6559,
                              "loc": {
                                "start": {
                                  "line": 194,
                                  "column": 20
                                },
                                "end": {
                                  "line": 194,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6535,
                                "end": 6549,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 34
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6535,
                                  "end": 6542,
                                  "loc": {
                                    "start": {
                                      "line": 194,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 27
                                    }
                                  },
                                  "name": "Object3"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6543,
                                  "end": 6549,
                                  "loc": {
                                    "start": {
                                      "line": 194,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 34
                                    }
                                  },
                                  "name": "Events"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6550,
                                "end": 6559,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 44
                                  }
                                },
                                "name": "Lifecycle"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6560,
                              "end": 6565,
                              "loc": {
                                "start": {
                                  "line": 194,
                                  "column": 45
                                },
                                "end": {
                                  "line": 194,
                                  "column": 50
                                }
                              },
                              "name": "Added"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 6567,
                            "end": 6583,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 52
                              },
                              "end": {
                                "line": 194,
                                "column": 68
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 6569,
                                "end": 6581,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 66
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 6569,
                                  "end": 6575,
                                  "loc": {
                                    "start": {
                                      "line": 194,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 60
                                    }
                                  },
                                  "name": "parent"
                                },
                                "value": {
                                  "type": "ThisExpression",
                                  "start": 6577,
                                  "end": 6581,
                                  "loc": {
                                    "start": {
                                      "line": 194,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 66
                                    }
                                  }
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6594,
                      "end": 6632,
                      "loc": {
                        "start": {
                          "line": 195,
                          "column": 8
                        },
                        "end": {
                          "line": 195,
                          "column": 46
                        }
                      },
                      "expression": {
                        "type": "LogicalExpression",
                        "start": 6594,
                        "end": 6631,
                        "loc": {
                          "start": {
                            "line": 195,
                            "column": 8
                          },
                          "end": {
                            "line": 195,
                            "column": 45
                          }
                        },
                        "left": {
                          "type": "UnaryExpression",
                          "start": 6594,
                          "end": 6605,
                          "loc": {
                            "start": {
                              "line": 195,
                              "column": 8
                            },
                            "end": {
                              "line": 195,
                              "column": 19
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 6595,
                            "end": 6605,
                            "loc": {
                              "start": {
                                "line": 195,
                                "column": 9
                              },
                              "end": {
                                "line": 195,
                                "column": 19
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 6596,
                              "end": 6605,
                              "loc": {
                                "start": {
                                  "line": 195,
                                  "column": 10
                                },
                                "end": {
                                  "line": 195,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6596,
                                "end": 6600,
                                "loc": {
                                  "start": {
                                    "line": 195,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 195,
                                    "column": 14
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6601,
                                "end": 6605,
                                "loc": {
                                  "start": {
                                    "line": 195,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 195,
                                    "column": 19
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            }
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "CallExpression",
                          "start": 6609,
                          "end": 6631,
                          "loc": {
                            "start": {
                              "line": 195,
                              "column": 23
                            },
                            "end": {
                              "line": 195,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6609,
                            "end": 6629,
                            "loc": {
                              "start": {
                                "line": 195,
                                "column": 23
                              },
                              "end": {
                                "line": 195,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6609,
                              "end": 6618,
                              "loc": {
                                "start": {
                                  "line": 195,
                                  "column": 23
                                },
                                "end": {
                                  "line": 195,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6609,
                                "end": 6613,
                                "loc": {
                                  "start": {
                                    "line": 195,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 195,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6614,
                                "end": 6618,
                                "loc": {
                                  "start": {
                                    "line": 195,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 195,
                                    "column": 32
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6619,
                              "end": 6629,
                              "loc": {
                                "start": {
                                  "line": 195,
                                  "column": 33
                                },
                                "end": {
                                  "line": 195,
                                  "column": 43
                                }
                              },
                              "name": "invalidate"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 6642,
      "end": 7369,
      "loc": {
        "start": {
          "line": 199,
          "column": 0
        },
        "end": {
          "line": 216,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 6642,
        "end": 7369,
        "loc": {
          "start": {
            "line": 199,
            "column": 0
          },
          "end": {
            "line": 216,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 6642,
          "end": 6678,
          "loc": {
            "start": {
              "line": 199,
              "column": 0
            },
            "end": {
              "line": 199,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 6642,
            "end": 6666,
            "loc": {
              "start": {
                "line": 199,
                "column": 0
              },
              "end": {
                "line": 199,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 6642,
              "end": 6656,
              "loc": {
                "start": {
                  "line": 199,
                  "column": 0
                },
                "end": {
                  "line": 199,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 6642,
                "end": 6647,
                "loc": {
                  "start": {
                    "line": 199,
                    "column": 0
                  },
                  "end": {
                    "line": 199,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 6648,
                "end": 6656,
                "loc": {
                  "start": {
                    "line": 199,
                    "column": 6
                  },
                  "end": {
                    "line": 199,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 6657,
              "end": 6666,
              "loc": {
                "start": {
                  "line": 199,
                  "column": 15
                },
                "end": {
                  "line": 199,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 6667,
            "end": 6678,
            "loc": {
              "start": {
                "line": 199,
                "column": 25
              },
              "end": {
                "line": 199,
                "column": 36
              }
            },
            "name": "removeAsync"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 6681,
          "end": 7369,
          "loc": {
            "start": {
              "line": 199,
              "column": 39
            },
            "end": {
              "line": 216,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 6667,
            "end": 6678,
            "loc": {
              "start": {
                "line": 199,
                "column": 25
              },
              "end": {
                "line": 199,
                "column": 36
              }
            },
            "name": "removeAsync"
          },
          "generator": false,
          "expression": false,
          "async": true,
          "params": [
            {
              "type": "Identifier",
              "start": 6696,
              "end": 6702,
              "loc": {
                "start": {
                  "line": 199,
                  "column": 54
                },
                "end": {
                  "line": 199,
                  "column": 60
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 6704,
            "end": 7369,
            "loc": {
              "start": {
                "line": 199,
                "column": 62
              },
              "end": {
                "line": 216,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 6710,
                "end": 6773,
                "loc": {
                  "start": {
                    "line": 200,
                    "column": 4
                  },
                  "end": {
                    "line": 200,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 6710,
                  "end": 6772,
                  "loc": {
                    "start": {
                      "line": 200,
                      "column": 4
                    },
                    "end": {
                      "line": 200,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 6710,
                    "end": 6716,
                    "loc": {
                      "start": {
                        "line": 200,
                        "column": 4
                      },
                      "end": {
                        "line": 200,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 6719,
                    "end": 6772,
                    "loc": {
                      "start": {
                        "line": 200,
                        "column": 13
                      },
                      "end": {
                        "line": 200,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 6719,
                      "end": 6739,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 13
                        },
                        "end": {
                          "line": 200,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 6719,
                        "end": 6735,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 13
                          },
                          "end": {
                            "line": 200,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6719,
                          "end": 6728,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 13
                            },
                            "end": {
                              "line": 200,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6729,
                          "end": 6735,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 23
                            },
                            "end": {
                              "line": 200,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 6738,
                        "end": 6739,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 32
                          },
                          "end": {
                            "line": 200,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 6742,
                      "end": 6763,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 36
                        },
                        "end": {
                          "line": 200,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 6742,
                        "end": 6752,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 36
                          },
                          "end": {
                            "line": 200,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6742,
                          "end": 6747,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 36
                            },
                            "end": {
                              "line": 200,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6748,
                          "end": 6752,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 42
                            },
                            "end": {
                              "line": 200,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 6753,
                          "end": 6762,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 47
                            },
                            "end": {
                              "line": 200,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 6766,
                      "end": 6772,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 60
                        },
                        "end": {
                          "line": 200,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 6778,
                "end": 6884,
                "loc": {
                  "start": {
                    "line": 201,
                    "column": 4
                  },
                  "end": {
                    "line": 203,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 6782,
                  "end": 6803,
                  "loc": {
                    "start": {
                      "line": 201,
                      "column": 8
                    },
                    "end": {
                      "line": 201,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 6782,
                    "end": 6795,
                    "loc": {
                      "start": {
                        "line": 201,
                        "column": 8
                      },
                      "end": {
                        "line": 201,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 6782,
                      "end": 6787,
                      "loc": {
                        "start": {
                          "line": 201,
                          "column": 8
                        },
                        "end": {
                          "line": 201,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6788,
                      "end": 6795,
                      "loc": {
                        "start": {
                          "line": 201,
                          "column": 14
                        },
                        "end": {
                          "line": 201,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 6796,
                      "end": 6802,
                      "loc": {
                        "start": {
                          "line": 201,
                          "column": 22
                        },
                        "end": {
                          "line": 201,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6805,
                  "end": 6884,
                  "loc": {
                    "start": {
                      "line": 201,
                      "column": 31
                    },
                    "end": {
                      "line": 203,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 6815,
                      "end": 6878,
                      "loc": {
                        "start": {
                          "line": 202,
                          "column": 8
                        },
                        "end": {
                          "line": 202,
                          "column": 71
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6822,
                        "end": 6877,
                        "loc": {
                          "start": {
                            "line": 202,
                            "column": 15
                          },
                          "end": {
                            "line": 202,
                            "column": 70
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6822,
                          "end": 6833,
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 15
                            },
                            "end": {
                              "line": 202,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6822,
                            "end": 6829,
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 15
                              },
                              "end": {
                                "line": 202,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6830,
                            "end": 6833,
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 23
                              },
                              "end": {
                                "line": 202,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6834,
                            "end": 6876,
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 27
                              },
                              "end": {
                                "line": 202,
                                "column": 69
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6834,
                              "end": 6844,
                              "loc": {
                                "start": {
                                  "line": 202,
                                  "column": 27
                                },
                                "end": {
                                  "line": 202,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6834,
                                "end": 6840,
                                "loc": {
                                  "start": {
                                    "line": 202,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 202,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6841,
                                "end": 6844,
                                "loc": {
                                  "start": {
                                    "line": 202,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 202,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 6845,
                                "end": 6875,
                                "loc": {
                                  "start": {
                                    "line": 202,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 202,
                                    "column": 68
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 6845,
                                    "end": 6849,
                                    "loc": {
                                      "start": {
                                        "line": 202,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 202,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 6853,
                                  "end": 6875,
                                  "loc": {
                                    "start": {
                                      "line": 202,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 202,
                                      "column": 68
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6853,
                                    "end": 6869,
                                    "loc": {
                                      "start": {
                                        "line": 202,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 202,
                                        "column": 62
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6853,
                                      "end": 6857,
                                      "loc": {
                                        "start": {
                                          "line": 202,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 202,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6858,
                                      "end": 6869,
                                      "loc": {
                                        "start": {
                                          "line": 202,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 202,
                                          "column": 62
                                        }
                                      },
                                      "name": "removeAsync"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 6870,
                                      "end": 6874,
                                      "loc": {
                                        "start": {
                                          "line": 202,
                                          "column": 63
                                        },
                                        "end": {
                                          "line": 202,
                                          "column": 67
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 6890,
                "end": 7367,
                "loc": {
                  "start": {
                    "line": 205,
                    "column": 4
                  },
                  "end": {
                    "line": 215,
                    "column": 5
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 6894,
                  "end": 6926,
                  "loc": {
                    "start": {
                      "line": 205,
                      "column": 8
                    },
                    "end": {
                      "line": 205,
                      "column": 40
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 6894,
                    "end": 6900,
                    "loc": {
                      "start": {
                        "line": 205,
                        "column": 8
                      },
                      "end": {
                        "line": 205,
                        "column": 14
                      }
                    },
                    "name": "object"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "MemberExpression",
                    "start": 6912,
                    "end": 6926,
                    "loc": {
                      "start": {
                        "line": 205,
                        "column": 26
                      },
                      "end": {
                        "line": 205,
                        "column": 40
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 6912,
                      "end": 6917,
                      "loc": {
                        "start": {
                          "line": 205,
                          "column": 26
                        },
                        "end": {
                          "line": 205,
                          "column": 31
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6918,
                      "end": 6926,
                      "loc": {
                        "start": {
                          "line": 205,
                          "column": 32
                        },
                        "end": {
                          "line": 205,
                          "column": 40
                        }
                      },
                      "name": "Object3D"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6928,
                  "end": 7367,
                  "loc": {
                    "start": {
                      "line": 205,
                      "column": 42
                    },
                    "end": {
                      "line": 215,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 6938,
                      "end": 6980,
                      "loc": {
                        "start": {
                          "line": 206,
                          "column": 8
                        },
                        "end": {
                          "line": 206,
                          "column": 50
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 6942,
                          "end": 6979,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 12
                            },
                            "end": {
                              "line": 206,
                              "column": 49
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 6942,
                            "end": 6947,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 12
                              },
                              "end": {
                                "line": 206,
                                "column": 17
                              }
                            },
                            "name": "index"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 6950,
                            "end": 6979,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 20
                              },
                              "end": {
                                "line": 206,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6950,
                              "end": 6971,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 20
                                },
                                "end": {
                                  "line": 206,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6950,
                                "end": 6963,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6950,
                                  "end": 6954,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 24
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6955,
                                  "end": 6963,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 33
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6964,
                                "end": 6971,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 41
                                  }
                                },
                                "name": "indexOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 6972,
                                "end": 6978,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 48
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 6989,
                      "end": 7361,
                      "loc": {
                        "start": {
                          "line": 207,
                          "column": 8
                        },
                        "end": {
                          "line": 214,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 6993,
                        "end": 7005,
                        "loc": {
                          "start": {
                            "line": 207,
                            "column": 12
                          },
                          "end": {
                            "line": 207,
                            "column": 24
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 6993,
                          "end": 6998,
                          "loc": {
                            "start": {
                              "line": 207,
                              "column": 12
                            },
                            "end": {
                              "line": 207,
                              "column": 17
                            }
                          },
                          "name": "index"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "UnaryExpression",
                          "start": 7003,
                          "end": 7005,
                          "loc": {
                            "start": {
                              "line": 207,
                              "column": 22
                            },
                            "end": {
                              "line": 207,
                              "column": 24
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 7004,
                            "end": 7005,
                            "loc": {
                              "start": {
                                "line": 207,
                                "column": 23
                              },
                              "end": {
                                "line": 207,
                                "column": 24
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 7007,
                        "end": 7361,
                        "loc": {
                          "start": {
                            "line": 207,
                            "column": 26
                          },
                          "end": {
                            "line": 214,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 7021,
                            "end": 7095,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 12
                              },
                              "end": {
                                "line": 208,
                                "column": 86
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 7021,
                              "end": 7094,
                              "loc": {
                                "start": {
                                  "line": 208,
                                  "column": 12
                                },
                                "end": {
                                  "line": 208,
                                  "column": 85
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 7027,
                                "end": 7094,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 85
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7027,
                                  "end": 7036,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7027,
                                    "end": 7031,
                                    "loc": {
                                      "start": {
                                        "line": 208,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 208,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7032,
                                    "end": 7036,
                                    "loc": {
                                      "start": {
                                        "line": 208,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 208,
                                        "column": 27
                                      }
                                    },
                                    "name": "emit"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 7037,
                                    "end": 7074,
                                    "loc": {
                                      "start": {
                                        "line": 208,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 208,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7037,
                                      "end": 7061,
                                      "loc": {
                                        "start": {
                                          "line": 208,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 208,
                                          "column": 52
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 7037,
                                        "end": 7051,
                                        "loc": {
                                          "start": {
                                            "line": 208,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 208,
                                            "column": 42
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7037,
                                          "end": 7044,
                                          "loc": {
                                            "start": {
                                              "line": 208,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 208,
                                              "column": 35
                                            }
                                          },
                                          "name": "Object3"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7045,
                                          "end": 7051,
                                          "loc": {
                                            "start": {
                                              "line": 208,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 208,
                                              "column": 42
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7052,
                                        "end": 7061,
                                        "loc": {
                                          "start": {
                                            "line": 208,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 208,
                                            "column": 52
                                          }
                                        },
                                        "name": "Lifecycle"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7062,
                                      "end": 7074,
                                      "loc": {
                                        "start": {
                                          "line": 208,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 208,
                                          "column": 65
                                        }
                                      },
                                      "name": "ChildRemoved"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "ObjectExpression",
                                    "start": 7076,
                                    "end": 7093,
                                    "loc": {
                                      "start": {
                                        "line": 208,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 208,
                                        "column": 84
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "Property",
                                        "start": 7078,
                                        "end": 7091,
                                        "loc": {
                                          "start": {
                                            "line": 208,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 208,
                                            "column": 82
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 7078,
                                          "end": 7083,
                                          "loc": {
                                            "start": {
                                              "line": 208,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 208,
                                              "column": 74
                                            }
                                          },
                                          "name": "child"
                                        },
                                        "value": {
                                          "type": "Identifier",
                                          "start": 7085,
                                          "end": 7091,
                                          "loc": {
                                            "start": {
                                              "line": 208,
                                              "column": 76
                                            },
                                            "end": {
                                              "line": 208,
                                              "column": 82
                                            }
                                          },
                                          "name": "object"
                                        },
                                        "kind": "init"
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7108,
                            "end": 7178,
                            "loc": {
                              "start": {
                                "line": 209,
                                "column": 12
                              },
                              "end": {
                                "line": 209,
                                "column": 82
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 7108,
                              "end": 7177,
                              "loc": {
                                "start": {
                                  "line": 209,
                                  "column": 12
                                },
                                "end": {
                                  "line": 209,
                                  "column": 81
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 7114,
                                "end": 7177,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 81
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7114,
                                  "end": 7125,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 209,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 7114,
                                    "end": 7120,
                                    "loc": {
                                      "start": {
                                        "line": 209,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 209,
                                        "column": 24
                                      }
                                    },
                                    "name": "object"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7121,
                                    "end": 7125,
                                    "loc": {
                                      "start": {
                                        "line": 209,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 209,
                                        "column": 29
                                      }
                                    },
                                    "name": "emit"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 7126,
                                    "end": 7158,
                                    "loc": {
                                      "start": {
                                        "line": 209,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 209,
                                        "column": 62
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7126,
                                      "end": 7150,
                                      "loc": {
                                        "start": {
                                          "line": 209,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 209,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 7126,
                                        "end": 7140,
                                        "loc": {
                                          "start": {
                                            "line": 209,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 209,
                                            "column": 44
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7126,
                                          "end": 7133,
                                          "loc": {
                                            "start": {
                                              "line": 209,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 209,
                                              "column": 37
                                            }
                                          },
                                          "name": "Object3"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7134,
                                          "end": 7140,
                                          "loc": {
                                            "start": {
                                              "line": 209,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 209,
                                              "column": 44
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7141,
                                        "end": 7150,
                                        "loc": {
                                          "start": {
                                            "line": 209,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 209,
                                            "column": 54
                                          }
                                        },
                                        "name": "Lifecycle"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7151,
                                      "end": 7158,
                                      "loc": {
                                        "start": {
                                          "line": 209,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 209,
                                          "column": 62
                                        }
                                      },
                                      "name": "Removed"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "ObjectExpression",
                                    "start": 7160,
                                    "end": 7176,
                                    "loc": {
                                      "start": {
                                        "line": 209,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 209,
                                        "column": 80
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "Property",
                                        "start": 7162,
                                        "end": 7174,
                                        "loc": {
                                          "start": {
                                            "line": 209,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 209,
                                            "column": 78
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 7162,
                                          "end": 7168,
                                          "loc": {
                                            "start": {
                                              "line": 209,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 209,
                                              "column": 72
                                            }
                                          },
                                          "name": "parent"
                                        },
                                        "value": {
                                          "type": "ThisExpression",
                                          "start": 7170,
                                          "end": 7174,
                                          "loc": {
                                            "start": {
                                              "line": 209,
                                              "column": 74
                                            },
                                            "end": {
                                              "line": 209,
                                              "column": 78
                                            }
                                          }
                                        },
                                        "kind": "init"
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7191,
                            "end": 7222,
                            "loc": {
                              "start": {
                                "line": 210,
                                "column": 12
                              },
                              "end": {
                                "line": 210,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7191,
                              "end": 7221,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 12
                                },
                                "end": {
                                  "line": 210,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7191,
                                "end": 7211,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 7191,
                                  "end": 7204,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7191,
                                    "end": 7195,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7196,
                                    "end": 7204,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 25
                                      }
                                    },
                                    "name": "children"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7205,
                                  "end": 7211,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 32
                                    }
                                  },
                                  "name": "splice"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 7212,
                                  "end": 7217,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 38
                                    }
                                  },
                                  "name": "index"
                                },
                                {
                                  "type": "Literal",
                                  "start": 7219,
                                  "end": 7220,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 41
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7235,
                            "end": 7256,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 12
                              },
                              "end": {
                                "line": 211,
                                "column": 33
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 7235,
                              "end": 7255,
                              "loc": {
                                "start": {
                                  "line": 211,
                                  "column": 12
                                },
                                "end": {
                                  "line": 211,
                                  "column": 32
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 7235,
                                "end": 7248,
                                "loc": {
                                  "start": {
                                    "line": 211,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 211,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7235,
                                  "end": 7241,
                                  "loc": {
                                    "start": {
                                      "line": 211,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 211,
                                      "column": 18
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7242,
                                  "end": 7248,
                                  "loc": {
                                    "start": {
                                      "line": 211,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 211,
                                      "column": 25
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 7251,
                                "end": 7255,
                                "loc": {
                                  "start": {
                                    "line": 211,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 211,
                                    "column": 32
                                  }
                                },
                                "value": null,
                                "rawValue": null,
                                "raw": "null"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7269,
                            "end": 7300,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 12
                              },
                              "end": {
                                "line": 212,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7269,
                              "end": 7299,
                              "loc": {
                                "start": {
                                  "line": 212,
                                  "column": 12
                                },
                                "end": {
                                  "line": 212,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 7269,
                                "end": 7285,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 28
                                  }
                                },
                                "name": "updateReferences"
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 7286,
                                  "end": 7290,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 33
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 7292,
                                  "end": 7298,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 41
                                    }
                                  },
                                  "name": "object"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7313,
                            "end": 7351,
                            "loc": {
                              "start": {
                                "line": 213,
                                "column": 12
                              },
                              "end": {
                                "line": 213,
                                "column": 50
                              }
                            },
                            "expression": {
                              "type": "LogicalExpression",
                              "start": 7313,
                              "end": 7350,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 12
                                },
                                "end": {
                                  "line": 213,
                                  "column": 49
                                }
                              },
                              "left": {
                                "type": "UnaryExpression",
                                "start": 7313,
                                "end": 7324,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 23
                                  }
                                },
                                "operator": "!",
                                "prefix": true,
                                "argument": {
                                  "type": "UnaryExpression",
                                  "start": 7314,
                                  "end": 7324,
                                  "loc": {
                                    "start": {
                                      "line": 213,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 213,
                                      "column": 23
                                    }
                                  },
                                  "operator": "!",
                                  "prefix": true,
                                  "argument": {
                                    "type": "MemberExpression",
                                    "start": 7315,
                                    "end": 7324,
                                    "loc": {
                                      "start": {
                                        "line": 213,
                                        "column": 14
                                      },
                                      "end": {
                                        "line": 213,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7315,
                                      "end": 7319,
                                      "loc": {
                                        "start": {
                                          "line": 213,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 213,
                                          "column": 18
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7320,
                                      "end": 7324,
                                      "loc": {
                                        "start": {
                                          "line": 213,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 213,
                                          "column": 23
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  }
                                }
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 7328,
                                "end": 7350,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 49
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7328,
                                  "end": 7348,
                                  "loc": {
                                    "start": {
                                      "line": 213,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 213,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 7328,
                                    "end": 7337,
                                    "loc": {
                                      "start": {
                                        "line": 213,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 213,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7328,
                                      "end": 7332,
                                      "loc": {
                                        "start": {
                                          "line": 213,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 213,
                                          "column": 31
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7333,
                                      "end": 7337,
                                      "loc": {
                                        "start": {
                                          "line": 213,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 213,
                                          "column": 36
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7338,
                                    "end": 7348,
                                    "loc": {
                                      "start": {
                                        "line": 213,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 213,
                                        "column": 47
                                      }
                                    },
                                    "name": "invalidate"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 7371,
      "end": 8070,
      "loc": {
        "start": {
          "line": 218,
          "column": 0
        },
        "end": {
          "line": 235,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 7371,
        "end": 8070,
        "loc": {
          "start": {
            "line": 218,
            "column": 0
          },
          "end": {
            "line": 235,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 7371,
          "end": 7402,
          "loc": {
            "start": {
              "line": 218,
              "column": 0
            },
            "end": {
              "line": 218,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 7371,
            "end": 7395,
            "loc": {
              "start": {
                "line": 218,
                "column": 0
              },
              "end": {
                "line": 218,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 7371,
              "end": 7385,
              "loc": {
                "start": {
                  "line": 218,
                  "column": 0
                },
                "end": {
                  "line": 218,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 7371,
                "end": 7376,
                "loc": {
                  "start": {
                    "line": 218,
                    "column": 0
                  },
                  "end": {
                    "line": 218,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 7377,
                "end": 7385,
                "loc": {
                  "start": {
                    "line": 218,
                    "column": 6
                  },
                  "end": {
                    "line": 218,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 7386,
              "end": 7395,
              "loc": {
                "start": {
                  "line": 218,
                  "column": 15
                },
                "end": {
                  "line": 218,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 7396,
            "end": 7402,
            "loc": {
              "start": {
                "line": 218,
                "column": 25
              },
              "end": {
                "line": 218,
                "column": 31
              }
            },
            "name": "remove"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 7405,
          "end": 8070,
          "loc": {
            "start": {
              "line": 218,
              "column": 34
            },
            "end": {
              "line": 235,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 7396,
            "end": 7402,
            "loc": {
              "start": {
                "line": 218,
                "column": 25
              },
              "end": {
                "line": 218,
                "column": 31
              }
            },
            "name": "remove"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 7414,
              "end": 7420,
              "loc": {
                "start": {
                  "line": 218,
                  "column": 43
                },
                "end": {
                  "line": 218,
                  "column": 49
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 7422,
            "end": 8070,
            "loc": {
              "start": {
                "line": 218,
                "column": 51
              },
              "end": {
                "line": 235,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 7428,
                "end": 7491,
                "loc": {
                  "start": {
                    "line": 219,
                    "column": 4
                  },
                  "end": {
                    "line": 219,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 7428,
                  "end": 7490,
                  "loc": {
                    "start": {
                      "line": 219,
                      "column": 4
                    },
                    "end": {
                      "line": 219,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 7428,
                    "end": 7434,
                    "loc": {
                      "start": {
                        "line": 219,
                        "column": 4
                      },
                      "end": {
                        "line": 219,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 7437,
                    "end": 7490,
                    "loc": {
                      "start": {
                        "line": 219,
                        "column": 13
                      },
                      "end": {
                        "line": 219,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 7437,
                      "end": 7457,
                      "loc": {
                        "start": {
                          "line": 219,
                          "column": 13
                        },
                        "end": {
                          "line": 219,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 7437,
                        "end": 7453,
                        "loc": {
                          "start": {
                            "line": 219,
                            "column": 13
                          },
                          "end": {
                            "line": 219,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 7437,
                          "end": 7446,
                          "loc": {
                            "start": {
                              "line": 219,
                              "column": 13
                            },
                            "end": {
                              "line": 219,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7447,
                          "end": 7453,
                          "loc": {
                            "start": {
                              "line": 219,
                              "column": 23
                            },
                            "end": {
                              "line": 219,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 7456,
                        "end": 7457,
                        "loc": {
                          "start": {
                            "line": 219,
                            "column": 32
                          },
                          "end": {
                            "line": 219,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 7460,
                      "end": 7481,
                      "loc": {
                        "start": {
                          "line": 219,
                          "column": 36
                        },
                        "end": {
                          "line": 219,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 7460,
                        "end": 7470,
                        "loc": {
                          "start": {
                            "line": 219,
                            "column": 36
                          },
                          "end": {
                            "line": 219,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 7460,
                          "end": 7465,
                          "loc": {
                            "start": {
                              "line": 219,
                              "column": 36
                            },
                            "end": {
                              "line": 219,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7466,
                          "end": 7470,
                          "loc": {
                            "start": {
                              "line": 219,
                              "column": 42
                            },
                            "end": {
                              "line": 219,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 7471,
                          "end": 7480,
                          "loc": {
                            "start": {
                              "line": 219,
                              "column": 47
                            },
                            "end": {
                              "line": 219,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 7484,
                      "end": 7490,
                      "loc": {
                        "start": {
                          "line": 219,
                          "column": 60
                        },
                        "end": {
                          "line": 219,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 7496,
                "end": 7597,
                "loc": {
                  "start": {
                    "line": 220,
                    "column": 4
                  },
                  "end": {
                    "line": 222,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 7500,
                  "end": 7521,
                  "loc": {
                    "start": {
                      "line": 220,
                      "column": 8
                    },
                    "end": {
                      "line": 220,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 7500,
                    "end": 7513,
                    "loc": {
                      "start": {
                        "line": 220,
                        "column": 8
                      },
                      "end": {
                        "line": 220,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 7500,
                      "end": 7505,
                      "loc": {
                        "start": {
                          "line": 220,
                          "column": 8
                        },
                        "end": {
                          "line": 220,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 7506,
                      "end": 7513,
                      "loc": {
                        "start": {
                          "line": 220,
                          "column": 14
                        },
                        "end": {
                          "line": 220,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 7514,
                      "end": 7520,
                      "loc": {
                        "start": {
                          "line": 220,
                          "column": 22
                        },
                        "end": {
                          "line": 220,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 7523,
                  "end": 7597,
                  "loc": {
                    "start": {
                      "line": 220,
                      "column": 31
                    },
                    "end": {
                      "line": 222,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 7533,
                      "end": 7591,
                      "loc": {
                        "start": {
                          "line": 221,
                          "column": 8
                        },
                        "end": {
                          "line": 221,
                          "column": 66
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 7540,
                        "end": 7590,
                        "loc": {
                          "start": {
                            "line": 221,
                            "column": 15
                          },
                          "end": {
                            "line": 221,
                            "column": 65
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7540,
                          "end": 7551,
                          "loc": {
                            "start": {
                              "line": 221,
                              "column": 15
                            },
                            "end": {
                              "line": 221,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7540,
                            "end": 7547,
                            "loc": {
                              "start": {
                                "line": 221,
                                "column": 15
                              },
                              "end": {
                                "line": 221,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7548,
                            "end": 7551,
                            "loc": {
                              "start": {
                                "line": 221,
                                "column": 23
                              },
                              "end": {
                                "line": 221,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 7552,
                            "end": 7589,
                            "loc": {
                              "start": {
                                "line": 221,
                                "column": 27
                              },
                              "end": {
                                "line": 221,
                                "column": 64
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7552,
                              "end": 7562,
                              "loc": {
                                "start": {
                                  "line": 221,
                                  "column": 27
                                },
                                "end": {
                                  "line": 221,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7552,
                                "end": 7558,
                                "loc": {
                                  "start": {
                                    "line": 221,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 221,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7559,
                                "end": 7562,
                                "loc": {
                                  "start": {
                                    "line": 221,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 221,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 7563,
                                "end": 7588,
                                "loc": {
                                  "start": {
                                    "line": 221,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 221,
                                    "column": 63
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 7563,
                                    "end": 7567,
                                    "loc": {
                                      "start": {
                                        "line": 221,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 221,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 7571,
                                  "end": 7588,
                                  "loc": {
                                    "start": {
                                      "line": 221,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 221,
                                      "column": 63
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 7571,
                                    "end": 7582,
                                    "loc": {
                                      "start": {
                                        "line": 221,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 221,
                                        "column": 57
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7571,
                                      "end": 7575,
                                      "loc": {
                                        "start": {
                                          "line": 221,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 221,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7576,
                                      "end": 7582,
                                      "loc": {
                                        "start": {
                                          "line": 221,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 221,
                                          "column": 57
                                        }
                                      },
                                      "name": "remove"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 7583,
                                      "end": 7587,
                                      "loc": {
                                        "start": {
                                          "line": 221,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 221,
                                          "column": 62
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 7603,
                "end": 8068,
                "loc": {
                  "start": {
                    "line": 224,
                    "column": 4
                  },
                  "end": {
                    "line": 234,
                    "column": 5
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 7607,
                  "end": 7639,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 8
                    },
                    "end": {
                      "line": 224,
                      "column": 40
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 7607,
                    "end": 7613,
                    "loc": {
                      "start": {
                        "line": 224,
                        "column": 8
                      },
                      "end": {
                        "line": 224,
                        "column": 14
                      }
                    },
                    "name": "object"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "MemberExpression",
                    "start": 7625,
                    "end": 7639,
                    "loc": {
                      "start": {
                        "line": 224,
                        "column": 26
                      },
                      "end": {
                        "line": 224,
                        "column": 40
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 7625,
                      "end": 7630,
                      "loc": {
                        "start": {
                          "line": 224,
                          "column": 26
                        },
                        "end": {
                          "line": 224,
                          "column": 31
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 7631,
                      "end": 7639,
                      "loc": {
                        "start": {
                          "line": 224,
                          "column": 32
                        },
                        "end": {
                          "line": 224,
                          "column": 40
                        }
                      },
                      "name": "Object3D"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 7641,
                  "end": 8068,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 42
                    },
                    "end": {
                      "line": 234,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 7651,
                      "end": 7693,
                      "loc": {
                        "start": {
                          "line": 225,
                          "column": 8
                        },
                        "end": {
                          "line": 225,
                          "column": 50
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7655,
                          "end": 7692,
                          "loc": {
                            "start": {
                              "line": 225,
                              "column": 12
                            },
                            "end": {
                              "line": 225,
                              "column": 49
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7655,
                            "end": 7660,
                            "loc": {
                              "start": {
                                "line": 225,
                                "column": 12
                              },
                              "end": {
                                "line": 225,
                                "column": 17
                              }
                            },
                            "name": "index"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7663,
                            "end": 7692,
                            "loc": {
                              "start": {
                                "line": 225,
                                "column": 20
                              },
                              "end": {
                                "line": 225,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7663,
                              "end": 7684,
                              "loc": {
                                "start": {
                                  "line": 225,
                                  "column": 20
                                },
                                "end": {
                                  "line": 225,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 7663,
                                "end": 7676,
                                "loc": {
                                  "start": {
                                    "line": 225,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 225,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7663,
                                  "end": 7667,
                                  "loc": {
                                    "start": {
                                      "line": 225,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 225,
                                      "column": 24
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7668,
                                  "end": 7676,
                                  "loc": {
                                    "start": {
                                      "line": 225,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 225,
                                      "column": 33
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7677,
                                "end": 7684,
                                "loc": {
                                  "start": {
                                    "line": 225,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 225,
                                    "column": 41
                                  }
                                },
                                "name": "indexOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7685,
                                "end": 7691,
                                "loc": {
                                  "start": {
                                    "line": 225,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 225,
                                    "column": 48
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 7702,
                      "end": 8062,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 8
                        },
                        "end": {
                          "line": 233,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7706,
                        "end": 7718,
                        "loc": {
                          "start": {
                            "line": 226,
                            "column": 12
                          },
                          "end": {
                            "line": 226,
                            "column": 24
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 7706,
                          "end": 7711,
                          "loc": {
                            "start": {
                              "line": 226,
                              "column": 12
                            },
                            "end": {
                              "line": 226,
                              "column": 17
                            }
                          },
                          "name": "index"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "UnaryExpression",
                          "start": 7716,
                          "end": 7718,
                          "loc": {
                            "start": {
                              "line": 226,
                              "column": 22
                            },
                            "end": {
                              "line": 226,
                              "column": 24
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 7717,
                            "end": 7718,
                            "loc": {
                              "start": {
                                "line": 226,
                                "column": 23
                              },
                              "end": {
                                "line": 226,
                                "column": 24
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 7720,
                        "end": 8062,
                        "loc": {
                          "start": {
                            "line": 226,
                            "column": 26
                          },
                          "end": {
                            "line": 233,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 7734,
                            "end": 7802,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 12
                              },
                              "end": {
                                "line": 227,
                                "column": 80
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7734,
                              "end": 7801,
                              "loc": {
                                "start": {
                                  "line": 227,
                                  "column": 12
                                },
                                "end": {
                                  "line": 227,
                                  "column": 79
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7734,
                                "end": 7743,
                                "loc": {
                                  "start": {
                                    "line": 227,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 227,
                                    "column": 21
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7734,
                                  "end": 7738,
                                  "loc": {
                                    "start": {
                                      "line": 227,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 227,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7739,
                                  "end": 7743,
                                  "loc": {
                                    "start": {
                                      "line": 227,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 227,
                                      "column": 21
                                    }
                                  },
                                  "name": "emit"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 7744,
                                  "end": 7781,
                                  "loc": {
                                    "start": {
                                      "line": 227,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 227,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 7744,
                                    "end": 7768,
                                    "loc": {
                                      "start": {
                                        "line": 227,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 227,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7744,
                                      "end": 7758,
                                      "loc": {
                                        "start": {
                                          "line": 227,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 227,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7744,
                                        "end": 7751,
                                        "loc": {
                                          "start": {
                                            "line": 227,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 227,
                                            "column": 29
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7752,
                                        "end": 7758,
                                        "loc": {
                                          "start": {
                                            "line": 227,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 227,
                                            "column": 36
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7759,
                                      "end": 7768,
                                      "loc": {
                                        "start": {
                                          "line": 227,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 227,
                                          "column": 46
                                        }
                                      },
                                      "name": "Lifecycle"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7769,
                                    "end": 7781,
                                    "loc": {
                                      "start": {
                                        "line": 227,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 227,
                                        "column": 59
                                      }
                                    },
                                    "name": "ChildRemoved"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "ObjectExpression",
                                  "start": 7783,
                                  "end": 7800,
                                  "loc": {
                                    "start": {
                                      "line": 227,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 227,
                                      "column": 78
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 7785,
                                      "end": 7798,
                                      "loc": {
                                        "start": {
                                          "line": 227,
                                          "column": 63
                                        },
                                        "end": {
                                          "line": 227,
                                          "column": 76
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7785,
                                        "end": 7790,
                                        "loc": {
                                          "start": {
                                            "line": 227,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 227,
                                            "column": 68
                                          }
                                        },
                                        "name": "child"
                                      },
                                      "value": {
                                        "type": "Identifier",
                                        "start": 7792,
                                        "end": 7798,
                                        "loc": {
                                          "start": {
                                            "line": 227,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 227,
                                            "column": 76
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7815,
                            "end": 7879,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 12
                              },
                              "end": {
                                "line": 228,
                                "column": 76
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7815,
                              "end": 7878,
                              "loc": {
                                "start": {
                                  "line": 228,
                                  "column": 12
                                },
                                "end": {
                                  "line": 228,
                                  "column": 75
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7815,
                                "end": 7826,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7815,
                                  "end": 7821,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 18
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7822,
                                  "end": 7826,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 23
                                    }
                                  },
                                  "name": "emit"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 7827,
                                  "end": 7859,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 7827,
                                    "end": 7851,
                                    "loc": {
                                      "start": {
                                        "line": 228,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 228,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7827,
                                      "end": 7841,
                                      "loc": {
                                        "start": {
                                          "line": 228,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 228,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7827,
                                        "end": 7834,
                                        "loc": {
                                          "start": {
                                            "line": 228,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 228,
                                            "column": 31
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7835,
                                        "end": 7841,
                                        "loc": {
                                          "start": {
                                            "line": 228,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 228,
                                            "column": 38
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7842,
                                      "end": 7851,
                                      "loc": {
                                        "start": {
                                          "line": 228,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 228,
                                          "column": 48
                                        }
                                      },
                                      "name": "Lifecycle"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7852,
                                    "end": 7859,
                                    "loc": {
                                      "start": {
                                        "line": 228,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 228,
                                        "column": 56
                                      }
                                    },
                                    "name": "Removed"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "ObjectExpression",
                                  "start": 7861,
                                  "end": 7877,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 74
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 7863,
                                      "end": 7875,
                                      "loc": {
                                        "start": {
                                          "line": 228,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 228,
                                          "column": 72
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7863,
                                        "end": 7869,
                                        "loc": {
                                          "start": {
                                            "line": 228,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 228,
                                            "column": 66
                                          }
                                        },
                                        "name": "parent"
                                      },
                                      "value": {
                                        "type": "ThisExpression",
                                        "start": 7871,
                                        "end": 7875,
                                        "loc": {
                                          "start": {
                                            "line": 228,
                                            "column": 68
                                          },
                                          "end": {
                                            "line": 228,
                                            "column": 72
                                          }
                                        }
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7892,
                            "end": 7923,
                            "loc": {
                              "start": {
                                "line": 229,
                                "column": 12
                              },
                              "end": {
                                "line": 229,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7892,
                              "end": 7922,
                              "loc": {
                                "start": {
                                  "line": 229,
                                  "column": 12
                                },
                                "end": {
                                  "line": 229,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7892,
                                "end": 7912,
                                "loc": {
                                  "start": {
                                    "line": 229,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 229,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 7892,
                                  "end": 7905,
                                  "loc": {
                                    "start": {
                                      "line": 229,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 229,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7892,
                                    "end": 7896,
                                    "loc": {
                                      "start": {
                                        "line": 229,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 229,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7897,
                                    "end": 7905,
                                    "loc": {
                                      "start": {
                                        "line": 229,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 229,
                                        "column": 25
                                      }
                                    },
                                    "name": "children"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7906,
                                  "end": 7912,
                                  "loc": {
                                    "start": {
                                      "line": 229,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 229,
                                      "column": 32
                                    }
                                  },
                                  "name": "splice"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 7913,
                                  "end": 7918,
                                  "loc": {
                                    "start": {
                                      "line": 229,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 229,
                                      "column": 38
                                    }
                                  },
                                  "name": "index"
                                },
                                {
                                  "type": "Literal",
                                  "start": 7920,
                                  "end": 7921,
                                  "loc": {
                                    "start": {
                                      "line": 229,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 229,
                                      "column": 41
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7936,
                            "end": 7957,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 12
                              },
                              "end": {
                                "line": 230,
                                "column": 33
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 7936,
                              "end": 7956,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 12
                                },
                                "end": {
                                  "line": 230,
                                  "column": 32
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 7936,
                                "end": 7949,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7936,
                                  "end": 7942,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 18
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7943,
                                  "end": 7949,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 25
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 7952,
                                "end": 7956,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 32
                                  }
                                },
                                "value": null,
                                "rawValue": null,
                                "raw": "null"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7970,
                            "end": 8001,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 12
                              },
                              "end": {
                                "line": 231,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7970,
                              "end": 8000,
                              "loc": {
                                "start": {
                                  "line": 231,
                                  "column": 12
                                },
                                "end": {
                                  "line": 231,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 7970,
                                "end": 7986,
                                "loc": {
                                  "start": {
                                    "line": 231,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 231,
                                    "column": 28
                                  }
                                },
                                "name": "updateReferences"
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 7987,
                                  "end": 7991,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 33
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 7993,
                                  "end": 7999,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 41
                                    }
                                  },
                                  "name": "object"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8014,
                            "end": 8052,
                            "loc": {
                              "start": {
                                "line": 232,
                                "column": 12
                              },
                              "end": {
                                "line": 232,
                                "column": 50
                              }
                            },
                            "expression": {
                              "type": "LogicalExpression",
                              "start": 8014,
                              "end": 8051,
                              "loc": {
                                "start": {
                                  "line": 232,
                                  "column": 12
                                },
                                "end": {
                                  "line": 232,
                                  "column": 49
                                }
                              },
                              "left": {
                                "type": "UnaryExpression",
                                "start": 8014,
                                "end": 8025,
                                "loc": {
                                  "start": {
                                    "line": 232,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 232,
                                    "column": 23
                                  }
                                },
                                "operator": "!",
                                "prefix": true,
                                "argument": {
                                  "type": "UnaryExpression",
                                  "start": 8015,
                                  "end": 8025,
                                  "loc": {
                                    "start": {
                                      "line": 232,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 232,
                                      "column": 23
                                    }
                                  },
                                  "operator": "!",
                                  "prefix": true,
                                  "argument": {
                                    "type": "MemberExpression",
                                    "start": 8016,
                                    "end": 8025,
                                    "loc": {
                                      "start": {
                                        "line": 232,
                                        "column": 14
                                      },
                                      "end": {
                                        "line": 232,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8016,
                                      "end": 8020,
                                      "loc": {
                                        "start": {
                                          "line": 232,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 232,
                                          "column": 18
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8021,
                                      "end": 8025,
                                      "loc": {
                                        "start": {
                                          "line": 232,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 232,
                                          "column": 23
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  }
                                }
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 8029,
                                "end": 8051,
                                "loc": {
                                  "start": {
                                    "line": 232,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 232,
                                    "column": 49
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8029,
                                  "end": 8049,
                                  "loc": {
                                    "start": {
                                      "line": 232,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 232,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8029,
                                    "end": 8038,
                                    "loc": {
                                      "start": {
                                        "line": 232,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 232,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8029,
                                      "end": 8033,
                                      "loc": {
                                        "start": {
                                          "line": 232,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 232,
                                          "column": 31
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8034,
                                      "end": 8038,
                                      "loc": {
                                        "start": {
                                          "line": 232,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 232,
                                          "column": 36
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8039,
                                    "end": 8049,
                                    "loc": {
                                      "start": {
                                        "line": 232,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 232,
                                        "column": 47
                                      }
                                    },
                                    "name": "invalidate"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 8072,
      "end": 8179,
      "loc": {
        "start": {
          "line": 237,
          "column": 0
        },
        "end": {
          "line": 240,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 8072,
        "end": 8179,
        "loc": {
          "start": {
            "line": 237,
            "column": 0
          },
          "end": {
            "line": 240,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 8072,
          "end": 8115,
          "loc": {
            "start": {
              "line": 237,
              "column": 0
            },
            "end": {
              "line": 237,
              "column": 43
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 8072,
            "end": 8096,
            "loc": {
              "start": {
                "line": 237,
                "column": 0
              },
              "end": {
                "line": 237,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 8072,
              "end": 8086,
              "loc": {
                "start": {
                  "line": 237,
                  "column": 0
                },
                "end": {
                  "line": 237,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 8072,
                "end": 8077,
                "loc": {
                  "start": {
                    "line": 237,
                    "column": 0
                  },
                  "end": {
                    "line": 237,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 8078,
                "end": 8086,
                "loc": {
                  "start": {
                    "line": 237,
                    "column": 6
                  },
                  "end": {
                    "line": 237,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 8087,
              "end": 8096,
              "loc": {
                "start": {
                  "line": 237,
                  "column": 15
                },
                "end": {
                  "line": 237,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 8097,
            "end": 8115,
            "loc": {
              "start": {
                "line": 237,
                "column": 25
              },
              "end": {
                "line": 237,
                "column": 43
              }
            },
            "name": "removeObjectTweens"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 8118,
          "end": 8179,
          "loc": {
            "start": {
              "line": 237,
              "column": 46
            },
            "end": {
              "line": 240,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 8097,
            "end": 8115,
            "loc": {
              "start": {
                "line": 237,
                "column": 25
              },
              "end": {
                "line": 237,
                "column": 43
              }
            },
            "name": "removeObjectTweens"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 8129,
            "end": 8179,
            "loc": {
              "start": {
                "line": 237,
                "column": 57
              },
              "end": {
                "line": 240,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 8132,
                "end": 8163,
                "loc": {
                  "start": {
                    "line": 238,
                    "column": 1
                  },
                  "end": {
                    "line": 238,
                    "column": 32
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 8132,
                  "end": 8162,
                  "loc": {
                    "start": {
                      "line": 238,
                      "column": 1
                    },
                    "end": {
                      "line": 238,
                      "column": 31
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 8132,
                    "end": 8156,
                    "loc": {
                      "start": {
                        "line": 238,
                        "column": 1
                      },
                      "end": {
                        "line": 238,
                        "column": 25
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 8132,
                      "end": 8137,
                      "loc": {
                        "start": {
                          "line": 238,
                          "column": 1
                        },
                        "end": {
                          "line": 238,
                          "column": 6
                        }
                      },
                      "name": "Tween"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8138,
                      "end": 8156,
                      "loc": {
                        "start": {
                          "line": 238,
                          "column": 7
                        },
                        "end": {
                          "line": 238,
                          "column": 25
                        }
                      },
                      "name": "removeObjectTweens"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ThisExpression",
                      "start": 8157,
                      "end": 8161,
                      "loc": {
                        "start": {
                          "line": 238,
                          "column": 26
                        },
                        "end": {
                          "line": 238,
                          "column": 30
                        }
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 8165,
                "end": 8177,
                "loc": {
                  "start": {
                    "line": 239,
                    "column": 1
                  },
                  "end": {
                    "line": 239,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 8172,
                  "end": 8176,
                  "loc": {
                    "start": {
                      "line": 239,
                      "column": 8
                    },
                    "end": {
                      "line": 239,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "FunctionDeclaration",
      "start": 8181,
      "end": 8340,
      "loc": {
        "start": {
          "line": 242,
          "column": 0
        },
        "end": {
          "line": 246,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 8190,
        "end": 8198,
        "loc": {
          "start": {
            "line": 242,
            "column": 9
          },
          "end": {
            "line": 242,
            "column": 17
          }
        },
        "name": "traverse"
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 8199,
          "end": 8202,
          "loc": {
            "start": {
              "line": 242,
              "column": 18
            },
            "end": {
              "line": 242,
              "column": 21
            }
          },
          "name": "obj"
        },
        {
          "type": "Identifier",
          "start": 8204,
          "end": 8206,
          "loc": {
            "start": {
              "line": 242,
              "column": 23
            },
            "end": {
              "line": 242,
              "column": 25
            }
          },
          "name": "cb"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 8208,
        "end": 8340,
        "loc": {
          "start": {
            "line": 242,
            "column": 27
          },
          "end": {
            "line": 246,
            "column": 1
          }
        },
        "body": [
          {
            "type": "IfStatement",
            "start": 8214,
            "end": 8242,
            "loc": {
              "start": {
                "line": 243,
                "column": 4
              },
              "end": {
                "line": 243,
                "column": 32
              }
            },
            "test": {
              "type": "UnaryExpression",
              "start": 8218,
              "end": 8232,
              "loc": {
                "start": {
                  "line": 243,
                  "column": 8
                },
                "end": {
                  "line": 243,
                  "column": 22
                }
              },
              "operator": "!",
              "prefix": true,
              "argument": {
                "type": "UnaryExpression",
                "start": 8219,
                "end": 8232,
                "loc": {
                  "start": {
                    "line": 243,
                    "column": 9
                  },
                  "end": {
                    "line": 243,
                    "column": 22
                  }
                },
                "operator": "!",
                "prefix": true,
                "argument": {
                  "type": "MemberExpression",
                  "start": 8220,
                  "end": 8232,
                  "loc": {
                    "start": {
                      "line": 243,
                      "column": 10
                    },
                    "end": {
                      "line": 243,
                      "column": 22
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 8220,
                    "end": 8223,
                    "loc": {
                      "start": {
                        "line": 243,
                        "column": 10
                      },
                      "end": {
                        "line": 243,
                        "column": 13
                      }
                    },
                    "name": "obj"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 8224,
                    "end": 8232,
                    "loc": {
                      "start": {
                        "line": 243,
                        "column": 14
                      },
                      "end": {
                        "line": 243,
                        "column": 22
                      }
                    },
                    "name": "material"
                  },
                  "computed": false
                }
              }
            },
            "consequent": {
              "type": "ExpressionStatement",
              "start": 8234,
              "end": 8242,
              "loc": {
                "start": {
                  "line": 243,
                  "column": 24
                },
                "end": {
                  "line": 243,
                  "column": 32
                }
              },
              "expression": {
                "type": "CallExpression",
                "start": 8234,
                "end": 8241,
                "loc": {
                  "start": {
                    "line": 243,
                    "column": 24
                  },
                  "end": {
                    "line": 243,
                    "column": 31
                  }
                },
                "callee": {
                  "type": "Identifier",
                  "start": 8234,
                  "end": 8236,
                  "loc": {
                    "start": {
                      "line": 243,
                      "column": 24
                    },
                    "end": {
                      "line": 243,
                      "column": 26
                    }
                  },
                  "name": "cb"
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 8237,
                    "end": 8240,
                    "loc": {
                      "start": {
                        "line": 243,
                        "column": 27
                      },
                      "end": {
                        "line": 243,
                        "column": 30
                      }
                    },
                    "name": "obj"
                  }
                ]
              }
            },
            "alternate": null
          },
          {
            "type": "ForOfStatement",
            "start": 8247,
            "end": 8338,
            "loc": {
              "start": {
                "line": 244,
                "column": 4
              },
              "end": {
                "line": 245,
                "column": 59
              }
            },
            "left": {
              "type": "VariableDeclaration",
              "start": 8252,
              "end": 8261,
              "loc": {
                "start": {
                  "line": 244,
                  "column": 9
                },
                "end": {
                  "line": 244,
                  "column": 18
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 8256,
                  "end": 8261,
                  "loc": {
                    "start": {
                      "line": 244,
                      "column": 13
                    },
                    "end": {
                      "line": 244,
                      "column": 18
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 8256,
                    "end": 8261,
                    "loc": {
                      "start": {
                        "line": 244,
                        "column": 13
                      },
                      "end": {
                        "line": 244,
                        "column": 18
                      }
                    },
                    "name": "child"
                  },
                  "init": null
                }
              ],
              "kind": "let"
            },
            "right": {
              "type": "MemberExpression",
              "start": 8265,
              "end": 8277,
              "loc": {
                "start": {
                  "line": 244,
                  "column": 22
                },
                "end": {
                  "line": 244,
                  "column": 34
                }
              },
              "object": {
                "type": "Identifier",
                "start": 8265,
                "end": 8268,
                "loc": {
                  "start": {
                    "line": 244,
                    "column": 22
                  },
                  "end": {
                    "line": 244,
                    "column": 25
                  }
                },
                "name": "obj"
              },
              "property": {
                "type": "Identifier",
                "start": 8269,
                "end": 8277,
                "loc": {
                  "start": {
                    "line": 244,
                    "column": 26
                  },
                  "end": {
                    "line": 244,
                    "column": 34
                  }
                },
                "name": "children"
              },
              "computed": false
            },
            "body": {
              "type": "ExpressionStatement",
              "start": 8287,
              "end": 8338,
              "loc": {
                "start": {
                  "line": 245,
                  "column": 8
                },
                "end": {
                  "line": 245,
                  "column": 59
                }
              },
              "expression": {
                "type": "LogicalExpression",
                "start": 8287,
                "end": 8337,
                "loc": {
                  "start": {
                    "line": 245,
                    "column": 8
                  },
                  "end": {
                    "line": 245,
                    "column": 58
                  }
                },
                "left": {
                  "type": "MemberExpression",
                  "start": 8287,
                  "end": 8314,
                  "loc": {
                    "start": {
                      "line": 245,
                      "column": 8
                    },
                    "end": {
                      "line": 245,
                      "column": 35
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 8287,
                    "end": 8292,
                    "loc": {
                      "start": {
                        "line": 245,
                        "column": 8
                      },
                      "end": {
                        "line": 245,
                        "column": 13
                      }
                    },
                    "name": "child"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 8293,
                    "end": 8314,
                    "loc": {
                      "start": {
                        "line": 245,
                        "column": 14
                      },
                      "end": {
                        "line": 245,
                        "column": 35
                      }
                    },
                    "name": "updateParentMaterials"
                  },
                  "computed": false
                },
                "operator": "&&",
                "right": {
                  "type": "CallExpression",
                  "start": 8318,
                  "end": 8337,
                  "loc": {
                    "start": {
                      "line": 245,
                      "column": 39
                    },
                    "end": {
                      "line": 245,
                      "column": 58
                    }
                  },
                  "callee": {
                    "type": "Identifier",
                    "start": 8318,
                    "end": 8326,
                    "loc": {
                      "start": {
                        "line": 245,
                        "column": 39
                      },
                      "end": {
                        "line": 245,
                        "column": 47
                      }
                    },
                    "name": "traverse"
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 8327,
                      "end": 8332,
                      "loc": {
                        "start": {
                          "line": 245,
                          "column": 48
                        },
                        "end": {
                          "line": 245,
                          "column": 53
                        }
                      },
                      "name": "child"
                    },
                    {
                      "type": "Identifier",
                      "start": 8334,
                      "end": 8336,
                      "loc": {
                        "start": {
                          "line": 245,
                          "column": 55
                        },
                        "end": {
                          "line": 245,
                          "column": 57
                        }
                      },
                      "name": "cb"
                    }
                  ]
                }
              }
            }
          }
        ]
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 8342,
      "end": 8983,
      "loc": {
        "start": {
          "line": 248,
          "column": 0
        },
        "end": {
          "line": 271,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 8342,
        "end": 8983,
        "loc": {
          "start": {
            "line": 248,
            "column": 0
          },
          "end": {
            "line": 271,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 8342,
          "end": 8382,
          "loc": {
            "start": {
              "line": 248,
              "column": 0
            },
            "end": {
              "line": 248,
              "column": 40
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 8342,
            "end": 8366,
            "loc": {
              "start": {
                "line": 248,
                "column": 0
              },
              "end": {
                "line": 248,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 8342,
              "end": 8356,
              "loc": {
                "start": {
                  "line": 248,
                  "column": 0
                },
                "end": {
                  "line": 248,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 8342,
                "end": 8347,
                "loc": {
                  "start": {
                    "line": 248,
                    "column": 0
                  },
                  "end": {
                    "line": 248,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 8348,
                "end": 8356,
                "loc": {
                  "start": {
                    "line": 248,
                    "column": 6
                  },
                  "end": {
                    "line": 248,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 8357,
              "end": 8366,
              "loc": {
                "start": {
                  "line": 248,
                  "column": 15
                },
                "end": {
                  "line": 248,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 8367,
            "end": 8382,
            "loc": {
              "start": {
                "line": 248,
                "column": 25
              },
              "end": {
                "line": 248,
                "column": 40
              }
            },
            "name": "updateMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 8385,
          "end": 8983,
          "loc": {
            "start": {
              "line": 248,
              "column": 43
            },
            "end": {
              "line": 271,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 8367,
            "end": 8382,
            "loc": {
              "start": {
                "line": 248,
                "column": 25
              },
              "end": {
                "line": 248,
                "column": 40
              }
            },
            "name": "updateMaterials"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 8396,
            "end": 8983,
            "loc": {
              "start": {
                "line": 248,
                "column": 54
              },
              "end": {
                "line": 271,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 8402,
                "end": 8420,
                "loc": {
                  "start": {
                    "line": 249,
                    "column": 4
                  },
                  "end": {
                    "line": 249,
                    "column": 22
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 8406,
                    "end": 8419,
                    "loc": {
                      "start": {
                        "line": 249,
                        "column": 8
                      },
                      "end": {
                        "line": 249,
                        "column": 21
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 8406,
                      "end": 8414,
                      "loc": {
                        "start": {
                          "line": 249,
                          "column": 8
                        },
                        "end": {
                          "line": 249,
                          "column": 16
                        }
                      },
                      "name": "colorMap"
                    },
                    "init": {
                      "type": "ObjectExpression",
                      "start": 8417,
                      "end": 8419,
                      "loc": {
                        "start": {
                          "line": 249,
                          "column": 19
                        },
                        "end": {
                          "line": 249,
                          "column": 21
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "ExpressionStatement",
                "start": 8422,
                "end": 8521,
                "loc": {
                  "start": {
                    "line": 250,
                    "column": 1
                  },
                  "end": {
                    "line": 255,
                    "column": 3
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 8422,
                  "end": 8520,
                  "loc": {
                    "start": {
                      "line": 250,
                      "column": 1
                    },
                    "end": {
                      "line": 255,
                      "column": 2
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 8422,
                    "end": 8436,
                    "loc": {
                      "start": {
                        "line": 250,
                        "column": 1
                      },
                      "end": {
                        "line": 250,
                        "column": 15
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 8422,
                      "end": 8426,
                      "loc": {
                        "start": {
                          "line": 250,
                          "column": 1
                        },
                        "end": {
                          "line": 250,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8427,
                      "end": 8436,
                      "loc": {
                        "start": {
                          "line": 250,
                          "column": 6
                        },
                        "end": {
                          "line": 250,
                          "column": 15
                        }
                      },
                      "name": "materials"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "LogicalExpression",
                    "start": 8439,
                    "end": 8520,
                    "loc": {
                      "start": {
                        "line": 250,
                        "column": 18
                      },
                      "end": {
                        "line": 255,
                        "column": 2
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 8439,
                      "end": 8453,
                      "loc": {
                        "start": {
                          "line": 250,
                          "column": 18
                        },
                        "end": {
                          "line": 250,
                          "column": 32
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 8439,
                        "end": 8443,
                        "loc": {
                          "start": {
                            "line": 250,
                            "column": 18
                          },
                          "end": {
                            "line": 250,
                            "column": 22
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 8444,
                        "end": 8453,
                        "loc": {
                          "start": {
                            "line": 250,
                            "column": 23
                          },
                          "end": {
                            "line": 250,
                            "column": 32
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "operator": "||",
                    "right": {
                      "type": "ObjectExpression",
                      "start": 8457,
                      "end": 8520,
                      "loc": {
                        "start": {
                          "line": 250,
                          "column": 36
                        },
                        "end": {
                          "line": 255,
                          "column": 2
                        }
                      },
                      "properties": [
                        {
                          "type": "Property",
                          "start": 8461,
                          "end": 8479,
                          "loc": {
                            "start": {
                              "line": 251,
                              "column": 2
                            },
                            "end": {
                              "line": 251,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8461,
                            "end": 8473,
                            "loc": {
                              "start": {
                                "line": 251,
                                "column": 2
                              },
                              "end": {
                                "line": 251,
                                "column": 14
                              }
                            },
                            "name": "updateParent"
                          },
                          "value": {
                            "type": "Literal",
                            "start": 8475,
                            "end": 8479,
                            "loc": {
                              "start": {
                                "line": 251,
                                "column": 16
                              },
                              "end": {
                                "line": 251,
                                "column": 20
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 8483,
                          "end": 8490,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 2
                            },
                            "end": {
                              "line": 252,
                              "column": 9
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8483,
                            "end": 8486,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 2
                              },
                              "end": {
                                "line": 252,
                                "column": 5
                              }
                            },
                            "name": "all"
                          },
                          "value": {
                            "type": "ArrayExpression",
                            "start": 8488,
                            "end": 8490,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 7
                              },
                              "end": {
                                "line": 252,
                                "column": 9
                              }
                            },
                            "elements": []
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 8494,
                          "end": 8504,
                          "loc": {
                            "start": {
                              "line": 253,
                              "column": 2
                            },
                            "end": {
                              "line": 253,
                              "column": 12
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8494,
                            "end": 8500,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 2
                              },
                              "end": {
                                "line": 253,
                                "column": 8
                              }
                            },
                            "name": "meshes"
                          },
                          "value": {
                            "type": "ArrayExpression",
                            "start": 8502,
                            "end": 8504,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 10
                              },
                              "end": {
                                "line": 253,
                                "column": 12
                              }
                            },
                            "elements": []
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 8508,
                          "end": 8517,
                          "loc": {
                            "start": {
                              "line": 254,
                              "column": 2
                            },
                            "end": {
                              "line": 254,
                              "column": 11
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8508,
                            "end": 8513,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 2
                              },
                              "end": {
                                "line": 254,
                                "column": 7
                              }
                            },
                            "name": "lines"
                          },
                          "value": {
                            "type": "ArrayExpression",
                            "start": 8515,
                            "end": 8517,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 9
                              },
                              "end": {
                                "line": 254,
                                "column": 11
                              }
                            },
                            "elements": []
                          },
                          "kind": "init"
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 8523,
                "end": 8547,
                "loc": {
                  "start": {
                    "line": 256,
                    "column": 1
                  },
                  "end": {
                    "line": 256,
                    "column": 25
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 8523,
                  "end": 8546,
                  "loc": {
                    "start": {
                      "line": 256,
                      "column": 1
                    },
                    "end": {
                      "line": 256,
                      "column": 24
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 8523,
                    "end": 8541,
                    "loc": {
                      "start": {
                        "line": 256,
                        "column": 1
                      },
                      "end": {
                        "line": 256,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 8523,
                      "end": 8537,
                      "loc": {
                        "start": {
                          "line": 256,
                          "column": 1
                        },
                        "end": {
                          "line": 256,
                          "column": 15
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 8523,
                        "end": 8527,
                        "loc": {
                          "start": {
                            "line": 256,
                            "column": 1
                          },
                          "end": {
                            "line": 256,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 8528,
                        "end": 8537,
                        "loc": {
                          "start": {
                            "line": 256,
                            "column": 6
                          },
                          "end": {
                            "line": 256,
                            "column": 15
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8538,
                      "end": 8541,
                      "loc": {
                        "start": {
                          "line": 256,
                          "column": 16
                        },
                        "end": {
                          "line": 256,
                          "column": 19
                        }
                      },
                      "name": "all"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ArrayExpression",
                    "start": 8544,
                    "end": 8546,
                    "loc": {
                      "start": {
                        "line": 256,
                        "column": 22
                      },
                      "end": {
                        "line": 256,
                        "column": 24
                      }
                    },
                    "elements": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 8549,
                "end": 8576,
                "loc": {
                  "start": {
                    "line": 257,
                    "column": 1
                  },
                  "end": {
                    "line": 257,
                    "column": 28
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 8549,
                  "end": 8575,
                  "loc": {
                    "start": {
                      "line": 257,
                      "column": 1
                    },
                    "end": {
                      "line": 257,
                      "column": 27
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 8549,
                    "end": 8570,
                    "loc": {
                      "start": {
                        "line": 257,
                        "column": 1
                      },
                      "end": {
                        "line": 257,
                        "column": 22
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 8549,
                      "end": 8563,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 1
                        },
                        "end": {
                          "line": 257,
                          "column": 15
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 8549,
                        "end": 8553,
                        "loc": {
                          "start": {
                            "line": 257,
                            "column": 1
                          },
                          "end": {
                            "line": 257,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 8554,
                        "end": 8563,
                        "loc": {
                          "start": {
                            "line": 257,
                            "column": 6
                          },
                          "end": {
                            "line": 257,
                            "column": 15
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8564,
                      "end": 8570,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 16
                        },
                        "end": {
                          "line": 257,
                          "column": 22
                        }
                      },
                      "name": "meshes"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ArrayExpression",
                    "start": 8573,
                    "end": 8575,
                    "loc": {
                      "start": {
                        "line": 257,
                        "column": 25
                      },
                      "end": {
                        "line": 257,
                        "column": 27
                      }
                    },
                    "elements": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 8578,
                "end": 8604,
                "loc": {
                  "start": {
                    "line": 258,
                    "column": 1
                  },
                  "end": {
                    "line": 258,
                    "column": 27
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 8578,
                  "end": 8603,
                  "loc": {
                    "start": {
                      "line": 258,
                      "column": 1
                    },
                    "end": {
                      "line": 258,
                      "column": 26
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 8578,
                    "end": 8598,
                    "loc": {
                      "start": {
                        "line": 258,
                        "column": 1
                      },
                      "end": {
                        "line": 258,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 8578,
                      "end": 8592,
                      "loc": {
                        "start": {
                          "line": 258,
                          "column": 1
                        },
                        "end": {
                          "line": 258,
                          "column": 15
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 8578,
                        "end": 8582,
                        "loc": {
                          "start": {
                            "line": 258,
                            "column": 1
                          },
                          "end": {
                            "line": 258,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 8583,
                        "end": 8592,
                        "loc": {
                          "start": {
                            "line": 258,
                            "column": 6
                          },
                          "end": {
                            "line": 258,
                            "column": 15
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8593,
                      "end": 8598,
                      "loc": {
                        "start": {
                          "line": 258,
                          "column": 16
                        },
                        "end": {
                          "line": 258,
                          "column": 21
                        }
                      },
                      "name": "lines"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ArrayExpression",
                    "start": 8601,
                    "end": 8603,
                    "loc": {
                      "start": {
                        "line": 258,
                        "column": 24
                      },
                      "end": {
                        "line": 258,
                        "column": 26
                      }
                    },
                    "elements": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 8610,
                "end": 8682,
                "loc": {
                  "start": {
                    "line": 260,
                    "column": 4
                  },
                  "end": {
                    "line": 260,
                    "column": 76
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 8610,
                  "end": 8681,
                  "loc": {
                    "start": {
                      "line": 260,
                      "column": 4
                    },
                    "end": {
                      "line": 260,
                      "column": 75
                    }
                  },
                  "callee": {
                    "type": "Identifier",
                    "start": 8610,
                    "end": 8618,
                    "loc": {
                      "start": {
                        "line": 260,
                        "column": 4
                      },
                      "end": {
                        "line": 260,
                        "column": 12
                      }
                    },
                    "name": "traverse"
                  },
                  "arguments": [
                    {
                      "type": "ThisExpression",
                      "start": 8619,
                      "end": 8623,
                      "loc": {
                        "start": {
                          "line": 260,
                          "column": 13
                        },
                        "end": {
                          "line": 260,
                          "column": 17
                        }
                      }
                    },
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 8625,
                      "end": 8680,
                      "loc": {
                        "start": {
                          "line": 260,
                          "column": 19
                        },
                        "end": {
                          "line": 260,
                          "column": 74
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": true,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 8625,
                          "end": 8630,
                          "loc": {
                            "start": {
                              "line": 260,
                              "column": 19
                            },
                            "end": {
                              "line": 260,
                              "column": 24
                            }
                          },
                          "name": "child"
                        }
                      ],
                      "body": {
                        "type": "AssignmentExpression",
                        "start": 8634,
                        "end": 8680,
                        "loc": {
                          "start": {
                            "line": 260,
                            "column": 28
                          },
                          "end": {
                            "line": 260,
                            "column": 74
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 8634,
                          "end": 8663,
                          "loc": {
                            "start": {
                              "line": 260,
                              "column": 28
                            },
                            "end": {
                              "line": 260,
                              "column": 57
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8634,
                            "end": 8642,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 28
                              },
                              "end": {
                                "line": 260,
                                "column": 36
                              }
                            },
                            "name": "colorMap"
                          },
                          "property": {
                            "type": "MemberExpression",
                            "start": 8643,
                            "end": 8662,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 37
                              },
                              "end": {
                                "line": 260,
                                "column": 56
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8643,
                              "end": 8657,
                              "loc": {
                                "start": {
                                  "line": 260,
                                  "column": 37
                                },
                                "end": {
                                  "line": 260,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8643,
                                "end": 8648,
                                "loc": {
                                  "start": {
                                    "line": 260,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 260,
                                    "column": 42
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8649,
                                "end": 8657,
                                "loc": {
                                  "start": {
                                    "line": 260,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 260,
                                    "column": 51
                                  }
                                },
                                "name": "material"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8658,
                              "end": 8662,
                              "loc": {
                                "start": {
                                  "line": 260,
                                  "column": 52
                                },
                                "end": {
                                  "line": 260,
                                  "column": 56
                                }
                              },
                              "name": "uuid"
                            },
                            "computed": false
                          },
                          "computed": true
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 8666,
                          "end": 8680,
                          "loc": {
                            "start": {
                              "line": 260,
                              "column": 60
                            },
                            "end": {
                              "line": 260,
                              "column": 74
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8666,
                            "end": 8671,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 60
                              },
                              "end": {
                                "line": 260,
                                "column": 65
                              }
                            },
                            "name": "child"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8672,
                            "end": 8680,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 66
                              },
                              "end": {
                                "line": 260,
                                "column": 74
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        }
                      }
                    }
                  ]
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 8684,
                "end": 8966,
                "loc": {
                  "start": {
                    "line": 261,
                    "column": 1
                  },
                  "end": {
                    "line": 268,
                    "column": 4
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 8684,
                  "end": 8965,
                  "loc": {
                    "start": {
                      "line": 261,
                      "column": 1
                    },
                    "end": {
                      "line": 268,
                      "column": 3
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 8684,
                    "end": 8713,
                    "loc": {
                      "start": {
                        "line": 261,
                        "column": 1
                      },
                      "end": {
                        "line": 261,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 8684,
                      "end": 8705,
                      "loc": {
                        "start": {
                          "line": 261,
                          "column": 1
                        },
                        "end": {
                          "line": 261,
                          "column": 22
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 8684,
                        "end": 8695,
                        "loc": {
                          "start": {
                            "line": 261,
                            "column": 1
                          },
                          "end": {
                            "line": 261,
                            "column": 12
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 8684,
                          "end": 8690,
                          "loc": {
                            "start": {
                              "line": 261,
                              "column": 1
                            },
                            "end": {
                              "line": 261,
                              "column": 7
                            }
                          },
                          "name": "Object"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 8691,
                          "end": 8695,
                          "loc": {
                            "start": {
                              "line": 261,
                              "column": 8
                            },
                            "end": {
                              "line": 261,
                              "column": 12
                            }
                          },
                          "name": "keys"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 8696,
                          "end": 8704,
                          "loc": {
                            "start": {
                              "line": 261,
                              "column": 13
                            },
                            "end": {
                              "line": 261,
                              "column": 21
                            }
                          },
                          "name": "colorMap"
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8706,
                      "end": 8713,
                      "loc": {
                        "start": {
                          "line": 261,
                          "column": 23
                        },
                        "end": {
                          "line": 261,
                          "column": 30
                        }
                      },
                      "name": "forEach"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 8714,
                      "end": 8964,
                      "loc": {
                        "start": {
                          "line": 261,
                          "column": 31
                        },
                        "end": {
                          "line": 268,
                          "column": 2
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 8714,
                          "end": 8717,
                          "loc": {
                            "start": {
                              "line": 261,
                              "column": 31
                            },
                            "end": {
                              "line": 261,
                              "column": 34
                            }
                          },
                          "name": "key"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 8721,
                        "end": 8964,
                        "loc": {
                          "start": {
                            "line": 261,
                            "column": 38
                          },
                          "end": {
                            "line": 268,
                            "column": 2
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 8725,
                            "end": 8754,
                            "loc": {
                              "start": {
                                "line": 262,
                                "column": 2
                              },
                              "end": {
                                "line": 262,
                                "column": 31
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 8729,
                                "end": 8753,
                                "loc": {
                                  "start": {
                                    "line": 262,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 262,
                                    "column": 30
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 8729,
                                  "end": 8737,
                                  "loc": {
                                    "start": {
                                      "line": 262,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 262,
                                      "column": 14
                                    }
                                  },
                                  "name": "material"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 8740,
                                  "end": 8753,
                                  "loc": {
                                    "start": {
                                      "line": 262,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 262,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8740,
                                    "end": 8748,
                                    "loc": {
                                      "start": {
                                        "line": 262,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 262,
                                        "column": 25
                                      }
                                    },
                                    "name": "colorMap"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8749,
                                    "end": 8752,
                                    "loc": {
                                      "start": {
                                        "line": 262,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 262,
                                        "column": 29
                                      }
                                    },
                                    "name": "key"
                                  },
                                  "computed": true
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8757,
                            "end": 8791,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 2
                              },
                              "end": {
                                "line": 263,
                                "column": 36
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 8757,
                              "end": 8790,
                              "loc": {
                                "start": {
                                  "line": 263,
                                  "column": 2
                                },
                                "end": {
                                  "line": 263,
                                  "column": 35
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8757,
                                "end": 8780,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 2
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8757,
                                  "end": 8775,
                                  "loc": {
                                    "start": {
                                      "line": 263,
                                      "column": 2
                                    },
                                    "end": {
                                      "line": 263,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8757,
                                    "end": 8771,
                                    "loc": {
                                      "start": {
                                        "line": 263,
                                        "column": 2
                                      },
                                      "end": {
                                        "line": 263,
                                        "column": 16
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8757,
                                      "end": 8761,
                                      "loc": {
                                        "start": {
                                          "line": 263,
                                          "column": 2
                                        },
                                        "end": {
                                          "line": 263,
                                          "column": 6
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8762,
                                      "end": 8771,
                                      "loc": {
                                        "start": {
                                          "line": 263,
                                          "column": 7
                                        },
                                        "end": {
                                          "line": 263,
                                          "column": 16
                                        }
                                      },
                                      "name": "materials"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8772,
                                    "end": 8775,
                                    "loc": {
                                      "start": {
                                        "line": 263,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 263,
                                        "column": 20
                                      }
                                    },
                                    "name": "all"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8776,
                                  "end": 8780,
                                  "loc": {
                                    "start": {
                                      "line": 263,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 263,
                                      "column": 25
                                    }
                                  },
                                  "name": "push"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 8781,
                                  "end": 8789,
                                  "loc": {
                                    "start": {
                                      "line": 263,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 263,
                                      "column": 34
                                    }
                                  },
                                  "name": "material"
                                }
                              ]
                            }
                          },
                          {
                            "type": "IfStatement",
                            "start": 8794,
                            "end": 8961,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 2
                              },
                              "end": {
                                "line": 267,
                                "column": 39
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 8798,
                              "end": 8832,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 6
                                },
                                "end": {
                                  "line": 264,
                                  "column": 40
                                }
                              },
                              "left": {
                                "type": "CallExpression",
                                "start": 8798,
                                "end": 8827,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 35
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8798,
                                  "end": 8819,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8798,
                                    "end": 8811,
                                    "loc": {
                                      "start": {
                                        "line": 264,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 264,
                                        "column": 19
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8798,
                                      "end": 8806,
                                      "loc": {
                                        "start": {
                                          "line": 264,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 264,
                                          "column": 14
                                        }
                                      },
                                      "name": "material"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8807,
                                      "end": 8811,
                                      "loc": {
                                        "start": {
                                          "line": 264,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 264,
                                          "column": 19
                                        }
                                      },
                                      "name": "type"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8812,
                                    "end": 8819,
                                    "loc": {
                                      "start": {
                                        "line": 264,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 264,
                                        "column": 27
                                      }
                                    },
                                    "name": "indexOf"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 8820,
                                    "end": 8826,
                                    "loc": {
                                      "start": {
                                        "line": 264,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 264,
                                        "column": 34
                                      }
                                    },
                                    "value": "Mesh",
                                    "rawValue": "Mesh",
                                    "raw": "'Mesh'"
                                  }
                                ]
                              },
                              "operator": ">",
                              "right": {
                                "type": "UnaryExpression",
                                "start": 8830,
                                "end": 8832,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 40
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 8831,
                                  "end": 8832,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 40
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              }
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 8837,
                              "end": 8874,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 3
                                },
                                "end": {
                                  "line": 265,
                                  "column": 40
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 8837,
                                "end": 8873,
                                "loc": {
                                  "start": {
                                    "line": 265,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 265,
                                    "column": 39
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8837,
                                  "end": 8863,
                                  "loc": {
                                    "start": {
                                      "line": 265,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 265,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8837,
                                    "end": 8858,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 3
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 24
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 8837,
                                      "end": 8851,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 3
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 17
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 8837,
                                        "end": 8841,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 3
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 7
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8842,
                                        "end": 8851,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 17
                                          }
                                        },
                                        "name": "materials"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8852,
                                      "end": 8858,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 24
                                        }
                                      },
                                      "name": "meshes"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8859,
                                    "end": 8863,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 29
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 8864,
                                    "end": 8872,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 38
                                      }
                                    },
                                    "name": "material"
                                  }
                                ]
                              }
                            },
                            "alternate": {
                              "type": "IfStatement",
                              "start": 8882,
                              "end": 8961,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 7
                                },
                                "end": {
                                  "line": 267,
                                  "column": 39
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 8886,
                                "end": 8920,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 45
                                  }
                                },
                                "left": {
                                  "type": "CallExpression",
                                  "start": 8886,
                                  "end": 8915,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8886,
                                    "end": 8907,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 32
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 8886,
                                      "end": 8899,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 24
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8886,
                                        "end": 8894,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 11
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 19
                                          }
                                        },
                                        "name": "material"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8895,
                                        "end": 8899,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 24
                                          }
                                        },
                                        "name": "type"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8900,
                                      "end": 8907,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 32
                                        }
                                      },
                                      "name": "indexOf"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Literal",
                                      "start": 8908,
                                      "end": 8914,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 39
                                        }
                                      },
                                      "value": "Line",
                                      "rawValue": "Line",
                                      "raw": "'Line'"
                                    }
                                  ]
                                },
                                "operator": ">",
                                "right": {
                                  "type": "UnaryExpression",
                                  "start": 8918,
                                  "end": 8920,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 45
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Literal",
                                    "start": 8919,
                                    "end": 8920,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 45
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              },
                              "consequent": {
                                "type": "ExpressionStatement",
                                "start": 8925,
                                "end": 8961,
                                "loc": {
                                  "start": {
                                    "line": 267,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 267,
                                    "column": 39
                                  }
                                },
                                "expression": {
                                  "type": "CallExpression",
                                  "start": 8925,
                                  "end": 8960,
                                  "loc": {
                                    "start": {
                                      "line": 267,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 267,
                                      "column": 38
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8925,
                                    "end": 8950,
                                    "loc": {
                                      "start": {
                                        "line": 267,
                                        "column": 3
                                      },
                                      "end": {
                                        "line": 267,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 8925,
                                      "end": 8945,
                                      "loc": {
                                        "start": {
                                          "line": 267,
                                          "column": 3
                                        },
                                        "end": {
                                          "line": 267,
                                          "column": 23
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 8925,
                                        "end": 8939,
                                        "loc": {
                                          "start": {
                                            "line": 267,
                                            "column": 3
                                          },
                                          "end": {
                                            "line": 267,
                                            "column": 17
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 8925,
                                          "end": 8929,
                                          "loc": {
                                            "start": {
                                              "line": 267,
                                              "column": 3
                                            },
                                            "end": {
                                              "line": 267,
                                              "column": 7
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8930,
                                          "end": 8939,
                                          "loc": {
                                            "start": {
                                              "line": 267,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 267,
                                              "column": 17
                                            }
                                          },
                                          "name": "materials"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8940,
                                        "end": 8945,
                                        "loc": {
                                          "start": {
                                            "line": 267,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 267,
                                            "column": 23
                                          }
                                        },
                                        "name": "lines"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8946,
                                      "end": 8950,
                                      "loc": {
                                        "start": {
                                          "line": 267,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 267,
                                          "column": 28
                                        }
                                      },
                                      "name": "push"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 8951,
                                      "end": 8959,
                                      "loc": {
                                        "start": {
                                          "line": 267,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 267,
                                          "column": 37
                                        }
                                      },
                                      "name": "material"
                                    }
                                  ]
                                }
                              },
                              "alternate": null
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 8969,
                "end": 8981,
                "loc": {
                  "start": {
                    "line": 270,
                    "column": 1
                  },
                  "end": {
                    "line": 270,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 8976,
                  "end": 8980,
                  "loc": {
                    "start": {
                      "line": 270,
                      "column": 8
                    },
                    "end": {
                      "line": 270,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 8985,
      "end": 9672,
      "loc": {
        "start": {
          "line": 273,
          "column": 0
        },
        "end": {
          "line": 301,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 8985,
        "end": 9672,
        "loc": {
          "start": {
            "line": 273,
            "column": 0
          },
          "end": {
            "line": 301,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 8985,
          "end": 9018,
          "loc": {
            "start": {
              "line": 273,
              "column": 0
            },
            "end": {
              "line": 273,
              "column": 33
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 8985,
            "end": 9009,
            "loc": {
              "start": {
                "line": 273,
                "column": 0
              },
              "end": {
                "line": 273,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 8985,
              "end": 8999,
              "loc": {
                "start": {
                  "line": 273,
                  "column": 0
                },
                "end": {
                  "line": 273,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 8985,
                "end": 8990,
                "loc": {
                  "start": {
                    "line": 273,
                    "column": 0
                  },
                  "end": {
                    "line": 273,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 8991,
                "end": 8999,
                "loc": {
                  "start": {
                    "line": 273,
                    "column": 6
                  },
                  "end": {
                    "line": 273,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 9000,
              "end": 9009,
              "loc": {
                "start": {
                  "line": 273,
                  "column": 15
                },
                "end": {
                  "line": 273,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 9010,
            "end": 9018,
            "loc": {
              "start": {
                "line": 273,
                "column": 25
              },
              "end": {
                "line": 273,
                "column": 33
              }
            },
            "name": "compress"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 9021,
          "end": 9672,
          "loc": {
            "start": {
              "line": 273,
              "column": 36
            },
            "end": {
              "line": 301,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 9010,
            "end": 9018,
            "loc": {
              "start": {
                "line": 273,
                "column": 25
              },
              "end": {
                "line": 273,
                "column": 33
              }
            },
            "name": "compress"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 9032,
            "end": 9672,
            "loc": {
              "start": {
                "line": 273,
                "column": 47
              },
              "end": {
                "line": 301,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 9035,
                "end": 9065,
                "loc": {
                  "start": {
                    "line": 274,
                    "column": 1
                  },
                  "end": {
                    "line": 274,
                    "column": 31
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 9039,
                  "end": 9056,
                  "loc": {
                    "start": {
                      "line": 274,
                      "column": 5
                    },
                    "end": {
                      "line": 274,
                      "column": 22
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "UnaryExpression",
                    "start": 9040,
                    "end": 9056,
                    "loc": {
                      "start": {
                        "line": 274,
                        "column": 6
                      },
                      "end": {
                        "line": 274,
                        "column": 22
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 9041,
                      "end": 9056,
                      "loc": {
                        "start": {
                          "line": 274,
                          "column": 7
                        },
                        "end": {
                          "line": 274,
                          "column": 22
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 9042,
                        "end": 9056,
                        "loc": {
                          "start": {
                            "line": 274,
                            "column": 8
                          },
                          "end": {
                            "line": 274,
                            "column": 22
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 9042,
                          "end": 9046,
                          "loc": {
                            "start": {
                              "line": 274,
                              "column": 8
                            },
                            "end": {
                              "line": 274,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9047,
                          "end": 9056,
                          "loc": {
                            "start": {
                              "line": 274,
                              "column": 13
                            },
                            "end": {
                              "line": 274,
                              "column": 22
                            }
                          },
                          "name": "materials"
                        },
                        "computed": false
                      }
                    }
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 9058,
                  "end": 9065,
                  "loc": {
                    "start": {
                      "line": 274,
                      "column": 24
                    },
                    "end": {
                      "line": 274,
                      "column": 31
                    }
                  },
                  "argument": null
                },
                "alternate": null
              },
              {
                "type": "VariableDeclaration",
                "start": 9068,
                "end": 9128,
                "loc": {
                  "start": {
                    "line": 276,
                    "column": 1
                  },
                  "end": {
                    "line": 277,
                    "column": 16
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 9072,
                    "end": 9110,
                    "loc": {
                      "start": {
                        "line": 276,
                        "column": 5
                      },
                      "end": {
                        "line": 276,
                        "column": 43
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 9072,
                      "end": 9076,
                      "loc": {
                        "start": {
                          "line": 276,
                          "column": 5
                        },
                        "end": {
                          "line": 276,
                          "column": 9
                        }
                      },
                      "name": "keys"
                    },
                    "init": {
                      "type": "CallExpression",
                      "start": 9079,
                      "end": 9110,
                      "loc": {
                        "start": {
                          "line": 276,
                          "column": 12
                        },
                        "end": {
                          "line": 276,
                          "column": 43
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 9079,
                        "end": 9090,
                        "loc": {
                          "start": {
                            "line": 276,
                            "column": 12
                          },
                          "end": {
                            "line": 276,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 9079,
                          "end": 9085,
                          "loc": {
                            "start": {
                              "line": 276,
                              "column": 12
                            },
                            "end": {
                              "line": 276,
                              "column": 18
                            }
                          },
                          "name": "Object"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9086,
                          "end": 9090,
                          "loc": {
                            "start": {
                              "line": 276,
                              "column": 19
                            },
                            "end": {
                              "line": 276,
                              "column": 23
                            }
                          },
                          "name": "keys"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "start": 9091,
                          "end": 9109,
                          "loc": {
                            "start": {
                              "line": 276,
                              "column": 24
                            },
                            "end": {
                              "line": 276,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9091,
                            "end": 9105,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 24
                              },
                              "end": {
                                "line": 276,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9091,
                              "end": 9095,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 24
                                },
                                "end": {
                                  "line": 276,
                                  "column": 28
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9096,
                              "end": 9105,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 29
                                },
                                "end": {
                                  "line": 276,
                                  "column": 38
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9106,
                            "end": 9109,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 39
                              },
                              "end": {
                                "line": 276,
                                "column": 42
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        }
                      ]
                    }
                  },
                  {
                    "type": "VariableDeclarator",
                    "start": 9114,
                    "end": 9127,
                    "loc": {
                      "start": {
                        "line": 277,
                        "column": 2
                      },
                      "end": {
                        "line": 277,
                        "column": 15
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 9114,
                      "end": 9122,
                      "loc": {
                        "start": {
                          "line": 277,
                          "column": 2
                        },
                        "end": {
                          "line": 277,
                          "column": 10
                        }
                      },
                      "name": "colorMap"
                    },
                    "init": {
                      "type": "ObjectExpression",
                      "start": 9125,
                      "end": 9127,
                      "loc": {
                        "start": {
                          "line": 277,
                          "column": 13
                        },
                        "end": {
                          "line": 277,
                          "column": 15
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "kind": "var",
                "trailingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Compress materials",
                    "start": 9131,
                    "end": 9152,
                    "loc": {
                      "start": {
                        "line": 279,
                        "column": 1
                      },
                      "end": {
                        "line": 279,
                        "column": 22
                      }
                    },
                    "range": [
                      9131,
                      9152
                    ]
                  }
                ]
              },
              {
                "type": "ForStatement",
                "start": 9154,
                "end": 9630,
                "loc": {
                  "start": {
                    "line": 280,
                    "column": 1
                  },
                  "end": {
                    "line": 297,
                    "column": 2
                  }
                },
                "init": {
                  "type": "VariableDeclaration",
                  "start": 9159,
                  "end": 9199,
                  "loc": {
                    "start": {
                      "line": 280,
                      "column": 6
                    },
                    "end": {
                      "line": 280,
                      "column": 46
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 9163,
                      "end": 9168,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 10
                        },
                        "end": {
                          "line": 280,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 9163,
                        "end": 9164,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 10
                          },
                          "end": {
                            "line": 280,
                            "column": 11
                          }
                        },
                        "name": "i",
                        "leadingComments": null
                      },
                      "init": {
                        "type": "Literal",
                        "start": 9167,
                        "end": 9168,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 14
                          },
                          "end": {
                            "line": 280,
                            "column": 15
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      "leadingComments": null
                    },
                    {
                      "type": "VariableDeclarator",
                      "start": 9170,
                      "end": 9199,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 17
                        },
                        "end": {
                          "line": 280,
                          "column": 46
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 9170,
                        "end": 9171,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 17
                          },
                          "end": {
                            "line": 280,
                            "column": 18
                          }
                        },
                        "name": "l"
                      },
                      "init": {
                        "type": "MemberExpression",
                        "start": 9174,
                        "end": 9199,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 21
                          },
                          "end": {
                            "line": 280,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 9174,
                          "end": 9192,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 21
                            },
                            "end": {
                              "line": 280,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9174,
                            "end": 9188,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 21
                              },
                              "end": {
                                "line": 280,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9174,
                              "end": 9178,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 21
                                },
                                "end": {
                                  "line": 280,
                                  "column": 25
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9179,
                              "end": 9188,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 26
                                },
                                "end": {
                                  "line": 280,
                                  "column": 35
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9189,
                            "end": 9192,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 36
                              },
                              "end": {
                                "line": 280,
                                "column": 39
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9193,
                          "end": 9199,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 40
                            },
                            "end": {
                              "line": 280,
                              "column": 46
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "kind": "var",
                  "leadingComments": null
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 9201,
                  "end": 9206,
                  "loc": {
                    "start": {
                      "line": 280,
                      "column": 48
                    },
                    "end": {
                      "line": 280,
                      "column": 53
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 9201,
                    "end": 9202,
                    "loc": {
                      "start": {
                        "line": 280,
                        "column": 48
                      },
                      "end": {
                        "line": 280,
                        "column": 49
                      }
                    },
                    "name": "i"
                  },
                  "operator": "<",
                  "right": {
                    "type": "Identifier",
                    "start": 9205,
                    "end": 9206,
                    "loc": {
                      "start": {
                        "line": 280,
                        "column": 52
                      },
                      "end": {
                        "line": 280,
                        "column": 53
                      }
                    },
                    "name": "l"
                  }
                },
                "update": {
                  "type": "UpdateExpression",
                  "start": 9208,
                  "end": 9211,
                  "loc": {
                    "start": {
                      "line": 280,
                      "column": 55
                    },
                    "end": {
                      "line": 280,
                      "column": 58
                    }
                  },
                  "operator": "++",
                  "prefix": false,
                  "argument": {
                    "type": "Identifier",
                    "start": 9208,
                    "end": 9209,
                    "loc": {
                      "start": {
                        "line": 280,
                        "column": 55
                      },
                      "end": {
                        "line": 280,
                        "column": 56
                      }
                    },
                    "name": "i"
                  }
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 9213,
                  "end": 9630,
                  "loc": {
                    "start": {
                      "line": 280,
                      "column": 60
                    },
                    "end": {
                      "line": 297,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 9217,
                      "end": 9350,
                      "loc": {
                        "start": {
                          "line": 281,
                          "column": 2
                        },
                        "end": {
                          "line": 282,
                          "column": 95
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9221,
                          "end": 9253,
                          "loc": {
                            "start": {
                              "line": 281,
                              "column": 6
                            },
                            "end": {
                              "line": 281,
                              "column": 38
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9221,
                            "end": 9229,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 6
                              },
                              "end": {
                                "line": 281,
                                "column": 14
                              }
                            },
                            "name": "material"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 9232,
                            "end": 9253,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 17
                              },
                              "end": {
                                "line": 281,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9232,
                              "end": 9250,
                              "loc": {
                                "start": {
                                  "line": 281,
                                  "column": 17
                                },
                                "end": {
                                  "line": 281,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9232,
                                "end": 9246,
                                "loc": {
                                  "start": {
                                    "line": 281,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 281,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 9232,
                                  "end": 9236,
                                  "loc": {
                                    "start": {
                                      "line": 281,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 281,
                                      "column": 21
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9237,
                                  "end": 9246,
                                  "loc": {
                                    "start": {
                                      "line": 281,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 281,
                                      "column": 31
                                    }
                                  },
                                  "name": "materials"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9247,
                                "end": 9250,
                                "loc": {
                                  "start": {
                                    "line": 281,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 281,
                                    "column": 35
                                  }
                                },
                                "name": "all"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9251,
                              "end": 9252,
                              "loc": {
                                "start": {
                                  "line": 281,
                                  "column": 36
                                },
                                "end": {
                                  "line": 281,
                                  "column": 37
                                }
                              },
                              "name": "i"
                            },
                            "computed": true
                          }
                        },
                        {
                          "type": "VariableDeclarator",
                          "start": 9258,
                          "end": 9349,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 3
                            },
                            "end": {
                              "line": 282,
                              "column": 94
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9258,
                            "end": 9263,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 3
                              },
                              "end": {
                                "line": 282,
                                "column": 8
                              }
                            },
                            "name": "index"
                          },
                          "init": {
                            "type": "TemplateLiteral",
                            "start": 9266,
                            "end": 9349,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 11
                              },
                              "end": {
                                "line": 282,
                                "column": 94
                              }
                            },
                            "expressions": [
                              {
                                "type": "CallExpression",
                                "start": 9270,
                                "end": 9299,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 44
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9270,
                                  "end": 9297,
                                  "loc": {
                                    "start": {
                                      "line": 282,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 282,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9270,
                                    "end": 9284,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9270,
                                      "end": 9278,
                                      "loc": {
                                        "start": {
                                          "line": 282,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 282,
                                          "column": 23
                                        }
                                      },
                                      "name": "material"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9279,
                                      "end": 9284,
                                      "loc": {
                                        "start": {
                                          "line": 282,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 282,
                                          "column": 29
                                        }
                                      },
                                      "name": "color"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9285,
                                    "end": 9297,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 42
                                      }
                                    },
                                    "name": "getHexString"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              {
                                "type": "CallExpression",
                                "start": 9303,
                                "end": 9330,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 75
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9303,
                                  "end": 9327,
                                  "loc": {
                                    "start": {
                                      "line": 282,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 282,
                                      "column": 72
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9303,
                                    "end": 9319,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 64
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9303,
                                      "end": 9311,
                                      "loc": {
                                        "start": {
                                          "line": 282,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 282,
                                          "column": 56
                                        }
                                      },
                                      "name": "material"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9312,
                                      "end": 9319,
                                      "loc": {
                                        "start": {
                                          "line": 282,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 282,
                                          "column": 64
                                        }
                                      },
                                      "name": "opacity"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9320,
                                    "end": 9327,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 72
                                      }
                                    },
                                    "name": "toFixed"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 9328,
                                    "end": 9329,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 73
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 74
                                      }
                                    },
                                    "value": 2,
                                    "rawValue": 2,
                                    "raw": "2"
                                  }
                                ]
                              },
                              {
                                "type": "MemberExpression",
                                "start": 9334,
                                "end": 9347,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 92
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9334,
                                  "end": 9342,
                                  "loc": {
                                    "start": {
                                      "line": 282,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 282,
                                      "column": 87
                                    }
                                  },
                                  "name": "material"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9343,
                                  "end": 9347,
                                  "loc": {
                                    "start": {
                                      "line": 282,
                                      "column": 88
                                    },
                                    "end": {
                                      "line": 282,
                                      "column": 92
                                    }
                                  },
                                  "name": "type"
                                },
                                "computed": false
                              }
                            ],
                            "quasis": [
                              {
                                "type": "TemplateElement",
                                "start": 9267,
                                "end": 9268,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 13
                                  }
                                },
                                "value": {
                                  "raw": "#",
                                  "cooked": "#"
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9300,
                                "end": 9301,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 46
                                  }
                                },
                                "value": {
                                  "raw": "_",
                                  "cooked": "_"
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9331,
                                "end": 9332,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 76
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 77
                                  }
                                },
                                "value": {
                                  "raw": "_",
                                  "cooked": "_"
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9348,
                                "end": 9348,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 93
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 93
                                  }
                                },
                                "value": {
                                  "raw": "",
                                  "cooked": ""
                                },
                                "tail": true
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9354,
                      "end": 9382,
                      "loc": {
                        "start": {
                          "line": 284,
                          "column": 2
                        },
                        "end": {
                          "line": 284,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9358,
                          "end": 9381,
                          "loc": {
                            "start": {
                              "line": 284,
                              "column": 6
                            },
                            "end": {
                              "line": 284,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9358,
                            "end": 9363,
                            "loc": {
                              "start": {
                                "line": 284,
                                "column": 6
                              },
                              "end": {
                                "line": 284,
                                "column": 11
                              }
                            },
                            "name": "entry"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 9366,
                            "end": 9381,
                            "loc": {
                              "start": {
                                "line": 284,
                                "column": 14
                              },
                              "end": {
                                "line": 284,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 9366,
                              "end": 9374,
                              "loc": {
                                "start": {
                                  "line": 284,
                                  "column": 14
                                },
                                "end": {
                                  "line": 284,
                                  "column": 22
                                }
                              },
                              "name": "colorMap"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9375,
                              "end": 9380,
                              "loc": {
                                "start": {
                                  "line": 284,
                                  "column": 23
                                },
                                "end": {
                                  "line": 284,
                                  "column": 28
                                }
                              },
                              "name": "index"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 9386,
                      "end": 9627,
                      "loc": {
                        "start": {
                          "line": 286,
                          "column": 2
                        },
                        "end": {
                          "line": 296,
                          "column": 3
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 9390,
                        "end": 9398,
                        "loc": {
                          "start": {
                            "line": 286,
                            "column": 6
                          },
                          "end": {
                            "line": 286,
                            "column": 14
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 9391,
                          "end": 9398,
                          "loc": {
                            "start": {
                              "line": 286,
                              "column": 7
                            },
                            "end": {
                              "line": 286,
                              "column": 14
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 9392,
                            "end": 9398,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 8
                              },
                              "end": {
                                "line": 286,
                                "column": 14
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 9393,
                              "end": 9398,
                              "loc": {
                                "start": {
                                  "line": 286,
                                  "column": 9
                                },
                                "end": {
                                  "line": 286,
                                  "column": 14
                                }
                              },
                              "name": "entry"
                            }
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9403,
                        "end": 9430,
                        "loc": {
                          "start": {
                            "line": 287,
                            "column": 3
                          },
                          "end": {
                            "line": 287,
                            "column": 30
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 9403,
                          "end": 9429,
                          "loc": {
                            "start": {
                              "line": 287,
                              "column": 3
                            },
                            "end": {
                              "line": 287,
                              "column": 29
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 9403,
                            "end": 9418,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 3
                              },
                              "end": {
                                "line": 287,
                                "column": 18
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 9403,
                              "end": 9411,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 3
                                },
                                "end": {
                                  "line": 287,
                                  "column": 11
                                }
                              },
                              "name": "colorMap"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9412,
                              "end": 9417,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 12
                                },
                                "end": {
                                  "line": 287,
                                  "column": 17
                                }
                              },
                              "name": "index"
                            },
                            "computed": true
                          },
                          "right": {
                            "type": "Identifier",
                            "start": 9421,
                            "end": 9429,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 21
                              },
                              "end": {
                                "line": 287,
                                "column": 29
                              }
                            },
                            "name": "material"
                          }
                        }
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 9438,
                        "end": 9627,
                        "loc": {
                          "start": {
                            "line": 288,
                            "column": 7
                          },
                          "end": {
                            "line": 296,
                            "column": 3
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 9480,
                            "end": 9623,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 3
                              },
                              "end": {
                                "line": 295,
                                "column": 6
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 9480,
                              "end": 9622,
                              "loc": {
                                "start": {
                                  "line": 290,
                                  "column": 3
                                },
                                "end": {
                                  "line": 295,
                                  "column": 5
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9480,
                                "end": 9493,
                                "loc": {
                                  "start": {
                                    "line": 290,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 290,
                                    "column": 16
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 9480,
                                  "end": 9484,
                                  "loc": {
                                    "start": {
                                      "line": 290,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 290,
                                      "column": 7
                                    }
                                  },
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9485,
                                  "end": 9493,
                                  "loc": {
                                    "start": {
                                      "line": 290,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 290,
                                      "column": 16
                                    }
                                  },
                                  "name": "traverse"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "FunctionExpression",
                                  "start": 9494,
                                  "end": 9621,
                                  "loc": {
                                    "start": {
                                      "line": 290,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 4
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 9503,
                                      "end": 9508,
                                      "loc": {
                                        "start": {
                                          "line": 290,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 290,
                                          "column": 31
                                        }
                                      },
                                      "name": "child"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 9510,
                                    "end": 9621,
                                    "loc": {
                                      "start": {
                                        "line": 290,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 295,
                                        "column": 4
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 9516,
                                        "end": 9616,
                                        "loc": {
                                          "start": {
                                            "line": 291,
                                            "column": 4
                                          },
                                          "end": {
                                            "line": 294,
                                            "column": 5
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 9520,
                                          "end": 9547,
                                          "loc": {
                                            "start": {
                                              "line": 291,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 291,
                                              "column": 35
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 9520,
                                            "end": 9534,
                                            "loc": {
                                              "start": {
                                                "line": 291,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 291,
                                                "column": 22
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 9520,
                                              "end": 9525,
                                              "loc": {
                                                "start": {
                                                  "line": 291,
                                                  "column": 8
                                                },
                                                "end": {
                                                  "line": 291,
                                                  "column": 13
                                                }
                                              },
                                              "name": "child"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 9526,
                                              "end": 9534,
                                              "loc": {
                                                "start": {
                                                  "line": 291,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 291,
                                                  "column": 22
                                                }
                                              },
                                              "name": "material"
                                            },
                                            "computed": false
                                          },
                                          "operator": "===",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 9539,
                                            "end": 9547,
                                            "loc": {
                                              "start": {
                                                "line": 291,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 291,
                                                "column": 35
                                              }
                                            },
                                            "name": "material"
                                          }
                                        },
                                        "consequent": {
                                          "type": "BlockStatement",
                                          "start": 9549,
                                          "end": 9616,
                                          "loc": {
                                            "start": {
                                              "line": 291,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 294,
                                              "column": 5
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 9556,
                                              "end": 9581,
                                              "loc": {
                                                "start": {
                                                  "line": 292,
                                                  "column": 5
                                                },
                                                "end": {
                                                  "line": 292,
                                                  "column": 30
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 9556,
                                                "end": 9580,
                                                "loc": {
                                                  "start": {
                                                    "line": 292,
                                                    "column": 5
                                                  },
                                                  "end": {
                                                    "line": 292,
                                                    "column": 29
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 9556,
                                                  "end": 9578,
                                                  "loc": {
                                                    "start": {
                                                      "line": 292,
                                                      "column": 5
                                                    },
                                                    "end": {
                                                      "line": 292,
                                                      "column": 27
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 9556,
                                                    "end": 9570,
                                                    "loc": {
                                                      "start": {
                                                        "line": 292,
                                                        "column": 5
                                                      },
                                                      "end": {
                                                        "line": 292,
                                                        "column": 19
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 9556,
                                                      "end": 9561,
                                                      "loc": {
                                                        "start": {
                                                          "line": 292,
                                                          "column": 5
                                                        },
                                                        "end": {
                                                          "line": 292,
                                                          "column": 10
                                                        }
                                                      },
                                                      "name": "child"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 9562,
                                                      "end": 9570,
                                                      "loc": {
                                                        "start": {
                                                          "line": 292,
                                                          "column": 11
                                                        },
                                                        "end": {
                                                          "line": 292,
                                                          "column": 19
                                                        }
                                                      },
                                                      "name": "material"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 9571,
                                                    "end": 9578,
                                                    "loc": {
                                                      "start": {
                                                        "line": 292,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 292,
                                                        "column": 27
                                                      }
                                                    },
                                                    "name": "dispose"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": []
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 9587,
                                              "end": 9610,
                                              "loc": {
                                                "start": {
                                                  "line": 293,
                                                  "column": 5
                                                },
                                                "end": {
                                                  "line": 293,
                                                  "column": 28
                                                }
                                              },
                                              "expression": {
                                                "type": "AssignmentExpression",
                                                "start": 9587,
                                                "end": 9609,
                                                "loc": {
                                                  "start": {
                                                    "line": 293,
                                                    "column": 5
                                                  },
                                                  "end": {
                                                    "line": 293,
                                                    "column": 27
                                                  }
                                                },
                                                "operator": "=",
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 9587,
                                                  "end": 9601,
                                                  "loc": {
                                                    "start": {
                                                      "line": 293,
                                                      "column": 5
                                                    },
                                                    "end": {
                                                      "line": 293,
                                                      "column": 19
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 9587,
                                                    "end": 9592,
                                                    "loc": {
                                                      "start": {
                                                        "line": 293,
                                                        "column": 5
                                                      },
                                                      "end": {
                                                        "line": 293,
                                                        "column": 10
                                                      }
                                                    },
                                                    "name": "child"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 9593,
                                                    "end": 9601,
                                                    "loc": {
                                                      "start": {
                                                        "line": 293,
                                                        "column": 11
                                                      },
                                                      "end": {
                                                        "line": 293,
                                                        "column": 19
                                                      }
                                                    },
                                                    "name": "material"
                                                  },
                                                  "computed": false
                                                },
                                                "right": {
                                                  "type": "Identifier",
                                                  "start": 9604,
                                                  "end": 9609,
                                                  "loc": {
                                                    "start": {
                                                      "line": 293,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 293,
                                                      "column": 27
                                                    }
                                                  },
                                                  "name": "entry"
                                                }
                                              }
                                            }
                                          ]
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  }
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " This material is already known",
                                "start": 9443,
                                "end": 9476,
                                "loc": {
                                  "start": {
                                    "line": 289,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 289,
                                    "column": 36
                                  }
                                },
                                "range": [
                                  9443,
                                  9476
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "leadingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Compress materials",
                    "start": 9131,
                    "end": 9152,
                    "loc": {
                      "start": {
                        "line": 279,
                        "column": 1
                      },
                      "end": {
                        "line": 279,
                        "column": 22
                      }
                    },
                    "range": [
                      9131,
                      9152
                    ]
                  }
                ]
              },
              {
                "type": "ExpressionStatement",
                "start": 9633,
                "end": 9656,
                "loc": {
                  "start": {
                    "line": 299,
                    "column": 1
                  },
                  "end": {
                    "line": 299,
                    "column": 24
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 9633,
                  "end": 9655,
                  "loc": {
                    "start": {
                      "line": 299,
                      "column": 1
                    },
                    "end": {
                      "line": 299,
                      "column": 23
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 9633,
                    "end": 9653,
                    "loc": {
                      "start": {
                        "line": 299,
                        "column": 1
                      },
                      "end": {
                        "line": 299,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 9633,
                      "end": 9637,
                      "loc": {
                        "start": {
                          "line": 299,
                          "column": 1
                        },
                        "end": {
                          "line": 299,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 9638,
                      "end": 9653,
                      "loc": {
                        "start": {
                          "line": 299,
                          "column": 6
                        },
                        "end": {
                          "line": 299,
                          "column": 21
                        }
                      },
                      "name": "updateMaterials"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              },
              {
                "type": "ReturnStatement",
                "start": 9658,
                "end": 9670,
                "loc": {
                  "start": {
                    "line": 300,
                    "column": 1
                  },
                  "end": {
                    "line": 300,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 9665,
                  "end": 9669,
                  "loc": {
                    "start": {
                      "line": 300,
                      "column": 8
                    },
                    "end": {
                      "line": 300,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 9674,
      "end": 9804,
      "loc": {
        "start": {
          "line": 303,
          "column": 0
        },
        "end": {
          "line": 305,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 9674,
        "end": 9804,
        "loc": {
          "start": {
            "line": 303,
            "column": 0
          },
          "end": {
            "line": 305,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 9674,
          "end": 9706,
          "loc": {
            "start": {
              "line": 303,
              "column": 0
            },
            "end": {
              "line": 303,
              "column": 32
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 9674,
            "end": 9698,
            "loc": {
              "start": {
                "line": 303,
                "column": 0
              },
              "end": {
                "line": 303,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 9674,
              "end": 9688,
              "loc": {
                "start": {
                  "line": 303,
                  "column": 0
                },
                "end": {
                  "line": 303,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 9674,
                "end": 9679,
                "loc": {
                  "start": {
                    "line": 303,
                    "column": 0
                  },
                  "end": {
                    "line": 303,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 9680,
                "end": 9688,
                "loc": {
                  "start": {
                    "line": 303,
                    "column": 6
                  },
                  "end": {
                    "line": 303,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 9689,
              "end": 9698,
              "loc": {
                "start": {
                  "line": 303,
                  "column": 15
                },
                "end": {
                  "line": 303,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 9699,
            "end": 9706,
            "loc": {
              "start": {
                "line": 303,
                "column": 25
              },
              "end": {
                "line": 303,
                "column": 32
              }
            },
            "name": "animate"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 9709,
          "end": 9804,
          "loc": {
            "start": {
              "line": 303,
              "column": 35
            },
            "end": {
              "line": 305,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 9699,
            "end": 9706,
            "loc": {
              "start": {
                "line": 303,
                "column": 25
              },
              "end": {
                "line": 303,
                "column": 32
              }
            },
            "name": "animate"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 9718,
              "end": 9728,
              "loc": {
                "start": {
                  "line": 303,
                  "column": 44
                },
                "end": {
                  "line": 303,
                  "column": 54
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 9730,
            "end": 9804,
            "loc": {
              "start": {
                "line": 303,
                "column": 56
              },
              "end": {
                "line": 305,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 9733,
                "end": 9802,
                "loc": {
                  "start": {
                    "line": 304,
                    "column": 1
                  },
                  "end": {
                    "line": 304,
                    "column": 70
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 9740,
                  "end": 9801,
                  "loc": {
                    "start": {
                      "line": 304,
                      "column": 8
                    },
                    "end": {
                      "line": 304,
                      "column": 69
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 9740,
                    "end": 9751,
                    "loc": {
                      "start": {
                        "line": 304,
                        "column": 8
                      },
                      "end": {
                        "line": 304,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 9740,
                      "end": 9744,
                      "loc": {
                        "start": {
                          "line": 304,
                          "column": 8
                        },
                        "end": {
                          "line": 304,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 9745,
                      "end": 9751,
                      "loc": {
                        "start": {
                          "line": 304,
                          "column": 13
                        },
                        "end": {
                          "line": 304,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 9754,
                    "end": 9781,
                    "loc": {
                      "start": {
                        "line": 304,
                        "column": 22
                      },
                      "end": {
                        "line": 304,
                        "column": 49
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 9758,
                      "end": 9763,
                      "loc": {
                        "start": {
                          "line": 304,
                          "column": 26
                        },
                        "end": {
                          "line": 304,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 9764,
                        "end": 9768,
                        "loc": {
                          "start": {
                            "line": 304,
                            "column": 32
                          },
                          "end": {
                            "line": 304,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "Identifier",
                        "start": 9770,
                        "end": 9780,
                        "loc": {
                          "start": {
                            "line": 304,
                            "column": 38
                          },
                          "end": {
                            "line": 304,
                            "column": 48
                          }
                        },
                        "name": "properties"
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 9784,
                    "end": 9801,
                    "loc": {
                      "start": {
                        "line": 304,
                        "column": 52
                      },
                      "end": {
                        "line": 304,
                        "column": 69
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 9788,
                      "end": 9793,
                      "loc": {
                        "start": {
                          "line": 304,
                          "column": 56
                        },
                        "end": {
                          "line": 304,
                          "column": 61
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 9794,
                        "end": 9796,
                        "loc": {
                          "start": {
                            "line": 304,
                            "column": 62
                          },
                          "end": {
                            "line": 304,
                            "column": 64
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 9798,
                        "end": 9800,
                        "loc": {
                          "start": {
                            "line": 304,
                            "column": 66
                          },
                          "end": {
                            "line": 304,
                            "column": 68
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 9806,
      "end": 9960,
      "loc": {
        "start": {
          "line": 307,
          "column": 0
        },
        "end": {
          "line": 309,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 9806,
        "end": 9960,
        "loc": {
          "start": {
            "line": 307,
            "column": 0
          },
          "end": {
            "line": 309,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 9806,
          "end": 9847,
          "loc": {
            "start": {
              "line": 307,
              "column": 0
            },
            "end": {
              "line": 307,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 9806,
            "end": 9830,
            "loc": {
              "start": {
                "line": 307,
                "column": 0
              },
              "end": {
                "line": 307,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 9806,
              "end": 9820,
              "loc": {
                "start": {
                  "line": 307,
                  "column": 0
                },
                "end": {
                  "line": 307,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 9806,
                "end": 9811,
                "loc": {
                  "start": {
                    "line": 307,
                    "column": 0
                  },
                  "end": {
                    "line": 307,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 9812,
                "end": 9820,
                "loc": {
                  "start": {
                    "line": 307,
                    "column": 6
                  },
                  "end": {
                    "line": 307,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 9821,
              "end": 9830,
              "loc": {
                "start": {
                  "line": 307,
                  "column": 15
                },
                "end": {
                  "line": 307,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 9831,
            "end": 9847,
            "loc": {
              "start": {
                "line": 307,
                "column": 25
              },
              "end": {
                "line": 307,
                "column": 41
              }
            },
            "name": "animateMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 9850,
          "end": 9960,
          "loc": {
            "start": {
              "line": 307,
              "column": 44
            },
            "end": {
              "line": 309,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 9831,
            "end": 9847,
            "loc": {
              "start": {
                "line": 307,
                "column": 25
              },
              "end": {
                "line": 307,
                "column": 41
              }
            },
            "name": "animateMaterials"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 9859,
              "end": 9869,
              "loc": {
                "start": {
                  "line": 307,
                  "column": 53
                },
                "end": {
                  "line": 307,
                  "column": 63
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 9871,
            "end": 9960,
            "loc": {
              "start": {
                "line": 307,
                "column": 65
              },
              "end": {
                "line": 309,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 9874,
                "end": 9958,
                "loc": {
                  "start": {
                    "line": 308,
                    "column": 1
                  },
                  "end": {
                    "line": 308,
                    "column": 85
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 9881,
                  "end": 9957,
                  "loc": {
                    "start": {
                      "line": 308,
                      "column": 8
                    },
                    "end": {
                      "line": 308,
                      "column": 84
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 9881,
                    "end": 9892,
                    "loc": {
                      "start": {
                        "line": 308,
                        "column": 8
                      },
                      "end": {
                        "line": 308,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 9881,
                      "end": 9885,
                      "loc": {
                        "start": {
                          "line": 308,
                          "column": 8
                        },
                        "end": {
                          "line": 308,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 9886,
                      "end": 9892,
                      "loc": {
                        "start": {
                          "line": 308,
                          "column": 13
                        },
                        "end": {
                          "line": 308,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 9895,
                    "end": 9937,
                    "loc": {
                      "start": {
                        "line": 308,
                        "column": 22
                      },
                      "end": {
                        "line": 308,
                        "column": 64
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 9899,
                      "end": 9904,
                      "loc": {
                        "start": {
                          "line": 308,
                          "column": 26
                        },
                        "end": {
                          "line": 308,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 9905,
                        "end": 9909,
                        "loc": {
                          "start": {
                            "line": 308,
                            "column": 32
                          },
                          "end": {
                            "line": 308,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 9911,
                        "end": 9936,
                        "loc": {
                          "start": {
                            "line": 308,
                            "column": 38
                          },
                          "end": {
                            "line": 308,
                            "column": 63
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 9913,
                            "end": 9934,
                            "loc": {
                              "start": {
                                "line": 308,
                                "column": 40
                              },
                              "end": {
                                "line": 308,
                                "column": 61
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 9913,
                              "end": 9922,
                              "loc": {
                                "start": {
                                  "line": 308,
                                  "column": 40
                                },
                                "end": {
                                  "line": 308,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 9924,
                              "end": 9934,
                              "loc": {
                                "start": {
                                  "line": 308,
                                  "column": 51
                                },
                                "end": {
                                  "line": 308,
                                  "column": 61
                                }
                              },
                              "name": "properties"
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 9940,
                    "end": 9957,
                    "loc": {
                      "start": {
                        "line": 308,
                        "column": 67
                      },
                      "end": {
                        "line": 308,
                        "column": 84
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 9944,
                      "end": 9949,
                      "loc": {
                        "start": {
                          "line": 308,
                          "column": 71
                        },
                        "end": {
                          "line": 308,
                          "column": 76
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 9950,
                        "end": 9952,
                        "loc": {
                          "start": {
                            "line": 308,
                            "column": 77
                          },
                          "end": {
                            "line": 308,
                            "column": 79
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 9954,
                        "end": 9956,
                        "loc": {
                          "start": {
                            "line": 308,
                            "column": 81
                          },
                          "end": {
                            "line": 308,
                            "column": 83
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 9962,
      "end": 10130,
      "loc": {
        "start": {
          "line": 311,
          "column": 0
        },
        "end": {
          "line": 313,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 9962,
        "end": 10130,
        "loc": {
          "start": {
            "line": 311,
            "column": 0
          },
          "end": {
            "line": 313,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 9962,
          "end": 10006,
          "loc": {
            "start": {
              "line": 311,
              "column": 0
            },
            "end": {
              "line": 311,
              "column": 44
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 9962,
            "end": 9986,
            "loc": {
              "start": {
                "line": 311,
                "column": 0
              },
              "end": {
                "line": 311,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 9962,
              "end": 9976,
              "loc": {
                "start": {
                  "line": 311,
                  "column": 0
                },
                "end": {
                  "line": 311,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 9962,
                "end": 9967,
                "loc": {
                  "start": {
                    "line": 311,
                    "column": 0
                  },
                  "end": {
                    "line": 311,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 9968,
                "end": 9976,
                "loc": {
                  "start": {
                    "line": 311,
                    "column": 6
                  },
                  "end": {
                    "line": 311,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 9977,
              "end": 9986,
              "loc": {
                "start": {
                  "line": 311,
                  "column": 15
                },
                "end": {
                  "line": 311,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 9987,
            "end": 10006,
            "loc": {
              "start": {
                "line": 311,
                "column": 25
              },
              "end": {
                "line": 311,
                "column": 44
              }
            },
            "name": "animateAllMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10009,
          "end": 10130,
          "loc": {
            "start": {
              "line": 311,
              "column": 47
            },
            "end": {
              "line": 313,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 9987,
            "end": 10006,
            "loc": {
              "start": {
                "line": 311,
                "column": 25
              },
              "end": {
                "line": 311,
                "column": 44
              }
            },
            "name": "animateAllMaterials"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10018,
              "end": 10028,
              "loc": {
                "start": {
                  "line": 311,
                  "column": 56
                },
                "end": {
                  "line": 311,
                  "column": 66
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10030,
            "end": 10130,
            "loc": {
              "start": {
                "line": 311,
                "column": 68
              },
              "end": {
                "line": 313,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 10033,
                "end": 10128,
                "loc": {
                  "start": {
                    "line": 312,
                    "column": 1
                  },
                  "end": {
                    "line": 312,
                    "column": 96
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 10040,
                  "end": 10127,
                  "loc": {
                    "start": {
                      "line": 312,
                      "column": 8
                    },
                    "end": {
                      "line": 312,
                      "column": 95
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 10040,
                    "end": 10051,
                    "loc": {
                      "start": {
                        "line": 312,
                        "column": 8
                      },
                      "end": {
                        "line": 312,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10040,
                      "end": 10044,
                      "loc": {
                        "start": {
                          "line": 312,
                          "column": 8
                        },
                        "end": {
                          "line": 312,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10045,
                      "end": 10051,
                      "loc": {
                        "start": {
                          "line": 312,
                          "column": 13
                        },
                        "end": {
                          "line": 312,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 10054,
                    "end": 10107,
                    "loc": {
                      "start": {
                        "line": 312,
                        "column": 22
                      },
                      "end": {
                        "line": 312,
                        "column": 75
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10058,
                      "end": 10063,
                      "loc": {
                        "start": {
                          "line": 312,
                          "column": 26
                        },
                        "end": {
                          "line": 312,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 10064,
                        "end": 10068,
                        "loc": {
                          "start": {
                            "line": 312,
                            "column": 32
                          },
                          "end": {
                            "line": 312,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10070,
                        "end": 10106,
                        "loc": {
                          "start": {
                            "line": 312,
                            "column": 38
                          },
                          "end": {
                            "line": 312,
                            "column": 74
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 10072,
                            "end": 10104,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 40
                              },
                              "end": {
                                "line": 312,
                                "column": 72
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 10072,
                              "end": 10081,
                              "loc": {
                                "start": {
                                  "line": 312,
                                  "column": 40
                                },
                                "end": {
                                  "line": 312,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "ObjectExpression",
                              "start": 10083,
                              "end": 10104,
                              "loc": {
                                "start": {
                                  "line": 312,
                                  "column": 51
                                },
                                "end": {
                                  "line": 312,
                                  "column": 72
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 10085,
                                  "end": 10102,
                                  "loc": {
                                    "start": {
                                      "line": 312,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 312,
                                      "column": 70
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 10085,
                                    "end": 10088,
                                    "loc": {
                                      "start": {
                                        "line": 312,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 312,
                                        "column": 56
                                      }
                                    },
                                    "name": "all"
                                  },
                                  "value": {
                                    "type": "ArrayExpression",
                                    "start": 10090,
                                    "end": 10102,
                                    "loc": {
                                      "start": {
                                        "line": 312,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 312,
                                        "column": 70
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Identifier",
                                        "start": 10091,
                                        "end": 10101,
                                        "loc": {
                                          "start": {
                                            "line": 312,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 312,
                                            "column": 69
                                          }
                                        },
                                        "name": "properties"
                                      }
                                    ]
                                  },
                                  "kind": "init"
                                }
                              ]
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10110,
                    "end": 10127,
                    "loc": {
                      "start": {
                        "line": 312,
                        "column": 78
                      },
                      "end": {
                        "line": 312,
                        "column": 95
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10114,
                      "end": 10119,
                      "loc": {
                        "start": {
                          "line": 312,
                          "column": 82
                        },
                        "end": {
                          "line": 312,
                          "column": 87
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10120,
                        "end": 10122,
                        "loc": {
                          "start": {
                            "line": 312,
                            "column": 88
                          },
                          "end": {
                            "line": 312,
                            "column": 90
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10124,
                        "end": 10126,
                        "loc": {
                          "start": {
                            "line": 312,
                            "column": 92
                          },
                          "end": {
                            "line": 312,
                            "column": 94
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10132,
      "end": 10297,
      "loc": {
        "start": {
          "line": 315,
          "column": 0
        },
        "end": {
          "line": 317,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10132,
        "end": 10297,
        "loc": {
          "start": {
            "line": 315,
            "column": 0
          },
          "end": {
            "line": 317,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10132,
          "end": 10170,
          "loc": {
            "start": {
              "line": 315,
              "column": 0
            },
            "end": {
              "line": 315,
              "column": 38
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10132,
            "end": 10156,
            "loc": {
              "start": {
                "line": 315,
                "column": 0
              },
              "end": {
                "line": 315,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10132,
              "end": 10146,
              "loc": {
                "start": {
                  "line": 315,
                  "column": 0
                },
                "end": {
                  "line": 315,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10132,
                "end": 10137,
                "loc": {
                  "start": {
                    "line": 315,
                    "column": 0
                  },
                  "end": {
                    "line": 315,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10138,
                "end": 10146,
                "loc": {
                  "start": {
                    "line": 315,
                    "column": 6
                  },
                  "end": {
                    "line": 315,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10147,
              "end": 10156,
              "loc": {
                "start": {
                  "line": 315,
                  "column": 15
                },
                "end": {
                  "line": 315,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10157,
            "end": 10170,
            "loc": {
              "start": {
                "line": 315,
                "column": 25
              },
              "end": {
                "line": 315,
                "column": 38
              }
            },
            "name": "animateMeshes"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10173,
          "end": 10297,
          "loc": {
            "start": {
              "line": 315,
              "column": 41
            },
            "end": {
              "line": 317,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10157,
            "end": 10170,
            "loc": {
              "start": {
                "line": 315,
                "column": 25
              },
              "end": {
                "line": 315,
                "column": 38
              }
            },
            "name": "animateMeshes"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10182,
              "end": 10192,
              "loc": {
                "start": {
                  "line": 315,
                  "column": 50
                },
                "end": {
                  "line": 315,
                  "column": 60
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10194,
            "end": 10297,
            "loc": {
              "start": {
                "line": 315,
                "column": 62
              },
              "end": {
                "line": 317,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 10197,
                "end": 10295,
                "loc": {
                  "start": {
                    "line": 316,
                    "column": 1
                  },
                  "end": {
                    "line": 316,
                    "column": 99
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 10204,
                  "end": 10294,
                  "loc": {
                    "start": {
                      "line": 316,
                      "column": 8
                    },
                    "end": {
                      "line": 316,
                      "column": 98
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 10204,
                    "end": 10215,
                    "loc": {
                      "start": {
                        "line": 316,
                        "column": 8
                      },
                      "end": {
                        "line": 316,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10204,
                      "end": 10208,
                      "loc": {
                        "start": {
                          "line": 316,
                          "column": 8
                        },
                        "end": {
                          "line": 316,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10209,
                      "end": 10215,
                      "loc": {
                        "start": {
                          "line": 316,
                          "column": 13
                        },
                        "end": {
                          "line": 316,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 10218,
                    "end": 10274,
                    "loc": {
                      "start": {
                        "line": 316,
                        "column": 22
                      },
                      "end": {
                        "line": 316,
                        "column": 78
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10222,
                      "end": 10227,
                      "loc": {
                        "start": {
                          "line": 316,
                          "column": 26
                        },
                        "end": {
                          "line": 316,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 10228,
                        "end": 10232,
                        "loc": {
                          "start": {
                            "line": 316,
                            "column": 32
                          },
                          "end": {
                            "line": 316,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10234,
                        "end": 10273,
                        "loc": {
                          "start": {
                            "line": 316,
                            "column": 38
                          },
                          "end": {
                            "line": 316,
                            "column": 77
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 10236,
                            "end": 10271,
                            "loc": {
                              "start": {
                                "line": 316,
                                "column": 40
                              },
                              "end": {
                                "line": 316,
                                "column": 75
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 10236,
                              "end": 10245,
                              "loc": {
                                "start": {
                                  "line": 316,
                                  "column": 40
                                },
                                "end": {
                                  "line": 316,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "ObjectExpression",
                              "start": 10247,
                              "end": 10271,
                              "loc": {
                                "start": {
                                  "line": 316,
                                  "column": 51
                                },
                                "end": {
                                  "line": 316,
                                  "column": 75
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 10249,
                                  "end": 10269,
                                  "loc": {
                                    "start": {
                                      "line": 316,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 316,
                                      "column": 73
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 10249,
                                    "end": 10255,
                                    "loc": {
                                      "start": {
                                        "line": 316,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 316,
                                        "column": 59
                                      }
                                    },
                                    "name": "meshes"
                                  },
                                  "value": {
                                    "type": "ArrayExpression",
                                    "start": 10257,
                                    "end": 10269,
                                    "loc": {
                                      "start": {
                                        "line": 316,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 316,
                                        "column": 73
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Identifier",
                                        "start": 10258,
                                        "end": 10268,
                                        "loc": {
                                          "start": {
                                            "line": 316,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 316,
                                            "column": 72
                                          }
                                        },
                                        "name": "properties"
                                      }
                                    ]
                                  },
                                  "kind": "init"
                                }
                              ]
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10277,
                    "end": 10294,
                    "loc": {
                      "start": {
                        "line": 316,
                        "column": 81
                      },
                      "end": {
                        "line": 316,
                        "column": 98
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10281,
                      "end": 10286,
                      "loc": {
                        "start": {
                          "line": 316,
                          "column": 85
                        },
                        "end": {
                          "line": 316,
                          "column": 90
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10287,
                        "end": 10289,
                        "loc": {
                          "start": {
                            "line": 316,
                            "column": 91
                          },
                          "end": {
                            "line": 316,
                            "column": 93
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10291,
                        "end": 10293,
                        "loc": {
                          "start": {
                            "line": 316,
                            "column": 95
                          },
                          "end": {
                            "line": 316,
                            "column": 97
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10299,
      "end": 10462,
      "loc": {
        "start": {
          "line": 319,
          "column": 0
        },
        "end": {
          "line": 321,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10299,
        "end": 10462,
        "loc": {
          "start": {
            "line": 319,
            "column": 0
          },
          "end": {
            "line": 321,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10299,
          "end": 10336,
          "loc": {
            "start": {
              "line": 319,
              "column": 0
            },
            "end": {
              "line": 319,
              "column": 37
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10299,
            "end": 10323,
            "loc": {
              "start": {
                "line": 319,
                "column": 0
              },
              "end": {
                "line": 319,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10299,
              "end": 10313,
              "loc": {
                "start": {
                  "line": 319,
                  "column": 0
                },
                "end": {
                  "line": 319,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10299,
                "end": 10304,
                "loc": {
                  "start": {
                    "line": 319,
                    "column": 0
                  },
                  "end": {
                    "line": 319,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10305,
                "end": 10313,
                "loc": {
                  "start": {
                    "line": 319,
                    "column": 6
                  },
                  "end": {
                    "line": 319,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10314,
              "end": 10323,
              "loc": {
                "start": {
                  "line": 319,
                  "column": 15
                },
                "end": {
                  "line": 319,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10324,
            "end": 10336,
            "loc": {
              "start": {
                "line": 319,
                "column": 25
              },
              "end": {
                "line": 319,
                "column": 37
              }
            },
            "name": "animateLines"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10339,
          "end": 10462,
          "loc": {
            "start": {
              "line": 319,
              "column": 40
            },
            "end": {
              "line": 321,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10324,
            "end": 10336,
            "loc": {
              "start": {
                "line": 319,
                "column": 25
              },
              "end": {
                "line": 319,
                "column": 37
              }
            },
            "name": "animateLines"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10348,
              "end": 10358,
              "loc": {
                "start": {
                  "line": 319,
                  "column": 49
                },
                "end": {
                  "line": 319,
                  "column": 59
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10360,
            "end": 10462,
            "loc": {
              "start": {
                "line": 319,
                "column": 61
              },
              "end": {
                "line": 321,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 10363,
                "end": 10460,
                "loc": {
                  "start": {
                    "line": 320,
                    "column": 1
                  },
                  "end": {
                    "line": 320,
                    "column": 98
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 10370,
                  "end": 10459,
                  "loc": {
                    "start": {
                      "line": 320,
                      "column": 8
                    },
                    "end": {
                      "line": 320,
                      "column": 97
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 10370,
                    "end": 10381,
                    "loc": {
                      "start": {
                        "line": 320,
                        "column": 8
                      },
                      "end": {
                        "line": 320,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10370,
                      "end": 10374,
                      "loc": {
                        "start": {
                          "line": 320,
                          "column": 8
                        },
                        "end": {
                          "line": 320,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10375,
                      "end": 10381,
                      "loc": {
                        "start": {
                          "line": 320,
                          "column": 13
                        },
                        "end": {
                          "line": 320,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 10384,
                    "end": 10439,
                    "loc": {
                      "start": {
                        "line": 320,
                        "column": 22
                      },
                      "end": {
                        "line": 320,
                        "column": 77
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10388,
                      "end": 10393,
                      "loc": {
                        "start": {
                          "line": 320,
                          "column": 26
                        },
                        "end": {
                          "line": 320,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 10394,
                        "end": 10398,
                        "loc": {
                          "start": {
                            "line": 320,
                            "column": 32
                          },
                          "end": {
                            "line": 320,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10400,
                        "end": 10438,
                        "loc": {
                          "start": {
                            "line": 320,
                            "column": 38
                          },
                          "end": {
                            "line": 320,
                            "column": 76
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 10402,
                            "end": 10436,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 40
                              },
                              "end": {
                                "line": 320,
                                "column": 74
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 10402,
                              "end": 10411,
                              "loc": {
                                "start": {
                                  "line": 320,
                                  "column": 40
                                },
                                "end": {
                                  "line": 320,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "ObjectExpression",
                              "start": 10413,
                              "end": 10436,
                              "loc": {
                                "start": {
                                  "line": 320,
                                  "column": 51
                                },
                                "end": {
                                  "line": 320,
                                  "column": 74
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 10415,
                                  "end": 10434,
                                  "loc": {
                                    "start": {
                                      "line": 320,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 320,
                                      "column": 72
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 10415,
                                    "end": 10420,
                                    "loc": {
                                      "start": {
                                        "line": 320,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 320,
                                        "column": 58
                                      }
                                    },
                                    "name": "lines"
                                  },
                                  "value": {
                                    "type": "ArrayExpression",
                                    "start": 10422,
                                    "end": 10434,
                                    "loc": {
                                      "start": {
                                        "line": 320,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 320,
                                        "column": 72
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Identifier",
                                        "start": 10423,
                                        "end": 10433,
                                        "loc": {
                                          "start": {
                                            "line": 320,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 320,
                                            "column": 71
                                          }
                                        },
                                        "name": "properties"
                                      }
                                    ]
                                  },
                                  "kind": "init"
                                }
                              ]
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10442,
                    "end": 10459,
                    "loc": {
                      "start": {
                        "line": 320,
                        "column": 80
                      },
                      "end": {
                        "line": 320,
                        "column": 97
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10446,
                      "end": 10451,
                      "loc": {
                        "start": {
                          "line": 320,
                          "column": 84
                        },
                        "end": {
                          "line": 320,
                          "column": 89
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10452,
                        "end": 10454,
                        "loc": {
                          "start": {
                            "line": 320,
                            "column": 90
                          },
                          "end": {
                            "line": 320,
                            "column": 92
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10456,
                        "end": 10458,
                        "loc": {
                          "start": {
                            "line": 320,
                            "column": 94
                          },
                          "end": {
                            "line": 320,
                            "column": 96
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10464,
      "end": 10691,
      "loc": {
        "start": {
          "line": 323,
          "column": 0
        },
        "end": {
          "line": 331,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10464,
        "end": 10691,
        "loc": {
          "start": {
            "line": 323,
            "column": 0
          },
          "end": {
            "line": 331,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10464,
          "end": 10496,
          "loc": {
            "start": {
              "line": 323,
              "column": 0
            },
            "end": {
              "line": 323,
              "column": 32
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10464,
            "end": 10488,
            "loc": {
              "start": {
                "line": 323,
                "column": 0
              },
              "end": {
                "line": 323,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10464,
              "end": 10478,
              "loc": {
                "start": {
                  "line": 323,
                  "column": 0
                },
                "end": {
                  "line": 323,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10464,
                "end": 10469,
                "loc": {
                  "start": {
                    "line": 323,
                    "column": 0
                  },
                  "end": {
                    "line": 323,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10470,
                "end": 10478,
                "loc": {
                  "start": {
                    "line": 323,
                    "column": 6
                  },
                  "end": {
                    "line": 323,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10479,
              "end": 10488,
              "loc": {
                "start": {
                  "line": 323,
                  "column": 15
                },
                "end": {
                  "line": 323,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10489,
            "end": 10496,
            "loc": {
              "start": {
                "line": 323,
                "column": 25
              },
              "end": {
                "line": 323,
                "column": 32
              }
            },
            "name": "fadeOut"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10499,
          "end": 10691,
          "loc": {
            "start": {
              "line": 323,
              "column": 35
            },
            "end": {
              "line": 331,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10489,
            "end": 10496,
            "loc": {
              "start": {
                "line": 323,
                "column": 25
              },
              "end": {
                "line": 323,
                "column": 32
              }
            },
            "name": "fadeOut"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10508,
              "end": 10514,
              "loc": {
                "start": {
                  "line": 323,
                  "column": 44
                },
                "end": {
                  "line": 323,
                  "column": 50
                }
              },
              "name": "length"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10516,
            "end": 10691,
            "loc": {
              "start": {
                "line": 323,
                "column": 52
              },
              "end": {
                "line": 331,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 10522,
                "end": 10672,
                "loc": {
                  "start": {
                    "line": 324,
                    "column": 4
                  },
                  "end": {
                    "line": 329,
                    "column": 26
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 10522,
                  "end": 10671,
                  "loc": {
                    "start": {
                      "line": 324,
                      "column": 4
                    },
                    "end": {
                      "line": 329,
                      "column": 25
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 10522,
                    "end": 10658,
                    "loc": {
                      "start": {
                        "line": 324,
                        "column": 4
                      },
                      "end": {
                        "line": 329,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 10522,
                      "end": 10652,
                      "loc": {
                        "start": {
                          "line": 324,
                          "column": 4
                        },
                        "end": {
                          "line": 329,
                          "column": 6
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 10522,
                        "end": 10534,
                        "loc": {
                          "start": {
                            "line": 324,
                            "column": 4
                          },
                          "end": {
                            "line": 324,
                            "column": 16
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 10522,
                          "end": 10526,
                          "loc": {
                            "start": {
                              "line": 324,
                              "column": 4
                            },
                            "end": {
                              "line": 324,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 10527,
                          "end": 10534,
                          "loc": {
                            "start": {
                              "line": 324,
                              "column": 9
                            },
                            "end": {
                              "line": 324,
                              "column": 16
                            }
                          },
                          "name": "animate"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ObjectExpression",
                          "start": 10535,
                          "end": 10651,
                          "loc": {
                            "start": {
                              "line": 324,
                              "column": 17
                            },
                            "end": {
                              "line": 329,
                              "column": 5
                            }
                          },
                          "properties": [
                            {
                              "type": "Property",
                              "start": 10545,
                              "end": 10645,
                              "loc": {
                                "start": {
                                  "line": 325,
                                  "column": 8
                                },
                                "end": {
                                  "line": 328,
                                  "column": 9
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 10545,
                                "end": 10554,
                                "loc": {
                                  "start": {
                                    "line": 325,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 325,
                                    "column": 17
                                  }
                                },
                                "name": "materials"
                              },
                              "value": {
                                "type": "ObjectExpression",
                                "start": 10556,
                                "end": 10645,
                                "loc": {
                                  "start": {
                                    "line": 325,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 328,
                                    "column": 9
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 10570,
                                    "end": 10596,
                                    "loc": {
                                      "start": {
                                        "line": 326,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 326,
                                        "column": 38
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 10570,
                                      "end": 10576,
                                      "loc": {
                                        "start": {
                                          "line": 326,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 326,
                                          "column": 18
                                        }
                                      },
                                      "name": "meshes"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 10578,
                                      "end": 10596,
                                      "loc": {
                                        "start": {
                                          "line": 326,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 326,
                                          "column": 38
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 10579,
                                          "end": 10595,
                                          "loc": {
                                            "start": {
                                              "line": 326,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 326,
                                              "column": 37
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 10581,
                                              "end": 10593,
                                              "loc": {
                                                "start": {
                                                  "line": 326,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 326,
                                                  "column": 35
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 10581,
                                                "end": 10588,
                                                "loc": {
                                                  "start": {
                                                    "line": 326,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 326,
                                                    "column": 30
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "Literal",
                                                "start": 10590,
                                                "end": 10593,
                                                "loc": {
                                                  "start": {
                                                    "line": 326,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 326,
                                                    "column": 35
                                                  }
                                                },
                                                "value": 0,
                                                "rawValue": 0,
                                                "raw": "0.0"
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  },
                                  {
                                    "type": "Property",
                                    "start": 10610,
                                    "end": 10635,
                                    "loc": {
                                      "start": {
                                        "line": 327,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 327,
                                        "column": 37
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 10610,
                                      "end": 10615,
                                      "loc": {
                                        "start": {
                                          "line": 327,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 327,
                                          "column": 17
                                        }
                                      },
                                      "name": "lines"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 10617,
                                      "end": 10635,
                                      "loc": {
                                        "start": {
                                          "line": 327,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 327,
                                          "column": 37
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 10618,
                                          "end": 10634,
                                          "loc": {
                                            "start": {
                                              "line": 327,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 327,
                                              "column": 36
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 10620,
                                              "end": 10632,
                                              "loc": {
                                                "start": {
                                                  "line": 327,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 327,
                                                  "column": 34
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 10620,
                                                "end": 10627,
                                                "loc": {
                                                  "start": {
                                                    "line": 327,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 327,
                                                    "column": 29
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "Literal",
                                                "start": 10629,
                                                "end": 10632,
                                                "loc": {
                                                  "start": {
                                                    "line": 327,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 327,
                                                    "column": 34
                                                  }
                                                },
                                                "value": 0,
                                                "rawValue": 0,
                                                "raw": "0.0"
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  }
                                ]
                              },
                              "kind": "init"
                            }
                          ]
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10653,
                      "end": 10658,
                      "loc": {
                        "start": {
                          "line": 329,
                          "column": 7
                        },
                        "end": {
                          "line": 329,
                          "column": 12
                        }
                      },
                      "name": "start"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "LogicalExpression",
                      "start": 10659,
                      "end": 10670,
                      "loc": {
                        "start": {
                          "line": 329,
                          "column": 13
                        },
                        "end": {
                          "line": 329,
                          "column": 24
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 10659,
                        "end": 10665,
                        "loc": {
                          "start": {
                            "line": 329,
                            "column": 13
                          },
                          "end": {
                            "line": 329,
                            "column": 19
                          }
                        },
                        "name": "length"
                      },
                      "operator": "||",
                      "right": {
                        "type": "Literal",
                        "start": 10669,
                        "end": 10670,
                        "loc": {
                          "start": {
                            "line": 329,
                            "column": 23
                          },
                          "end": {
                            "line": 329,
                            "column": 24
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 10677,
                "end": 10689,
                "loc": {
                  "start": {
                    "line": 330,
                    "column": 4
                  },
                  "end": {
                    "line": 330,
                    "column": 16
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 10684,
                  "end": 10688,
                  "loc": {
                    "start": {
                      "line": 330,
                      "column": 11
                    },
                    "end": {
                      "line": 330,
                      "column": 15
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10693,
      "end": 10944,
      "loc": {
        "start": {
          "line": 333,
          "column": 0
        },
        "end": {
          "line": 341,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10693,
        "end": 10944,
        "loc": {
          "start": {
            "line": 333,
            "column": 0
          },
          "end": {
            "line": 341,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10693,
          "end": 10724,
          "loc": {
            "start": {
              "line": 333,
              "column": 0
            },
            "end": {
              "line": 333,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10693,
            "end": 10717,
            "loc": {
              "start": {
                "line": 333,
                "column": 0
              },
              "end": {
                "line": 333,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10693,
              "end": 10707,
              "loc": {
                "start": {
                  "line": 333,
                  "column": 0
                },
                "end": {
                  "line": 333,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10693,
                "end": 10698,
                "loc": {
                  "start": {
                    "line": 333,
                    "column": 0
                  },
                  "end": {
                    "line": 333,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10699,
                "end": 10707,
                "loc": {
                  "start": {
                    "line": 333,
                    "column": 6
                  },
                  "end": {
                    "line": 333,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10708,
              "end": 10717,
              "loc": {
                "start": {
                  "line": 333,
                  "column": 15
                },
                "end": {
                  "line": 333,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10718,
            "end": 10724,
            "loc": {
              "start": {
                "line": 333,
                "column": 25
              },
              "end": {
                "line": 333,
                "column": 31
              }
            },
            "name": "fadeIn"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10727,
          "end": 10944,
          "loc": {
            "start": {
              "line": 333,
              "column": 34
            },
            "end": {
              "line": 341,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10718,
            "end": 10724,
            "loc": {
              "start": {
                "line": 333,
                "column": 25
              },
              "end": {
                "line": 333,
                "column": 31
              }
            },
            "name": "fadeIn"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10736,
              "end": 10742,
              "loc": {
                "start": {
                  "line": 333,
                  "column": 43
                },
                "end": {
                  "line": 333,
                  "column": 49
                }
              },
              "name": "length"
            },
            {
              "type": "Identifier",
              "start": 10744,
              "end": 10749,
              "loc": {
                "start": {
                  "line": 333,
                  "column": 51
                },
                "end": {
                  "line": 333,
                  "column": 56
                }
              },
              "name": "value"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10751,
            "end": 10944,
            "loc": {
              "start": {
                "line": 333,
                "column": 58
              },
              "end": {
                "line": 341,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 10757,
                "end": 10925,
                "loc": {
                  "start": {
                    "line": 334,
                    "column": 4
                  },
                  "end": {
                    "line": 339,
                    "column": 26
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 10757,
                  "end": 10924,
                  "loc": {
                    "start": {
                      "line": 334,
                      "column": 4
                    },
                    "end": {
                      "line": 339,
                      "column": 25
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 10757,
                    "end": 10911,
                    "loc": {
                      "start": {
                        "line": 334,
                        "column": 4
                      },
                      "end": {
                        "line": 339,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 10757,
                      "end": 10905,
                      "loc": {
                        "start": {
                          "line": 334,
                          "column": 4
                        },
                        "end": {
                          "line": 339,
                          "column": 6
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 10757,
                        "end": 10769,
                        "loc": {
                          "start": {
                            "line": 334,
                            "column": 4
                          },
                          "end": {
                            "line": 334,
                            "column": 16
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 10757,
                          "end": 10761,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 4
                            },
                            "end": {
                              "line": 334,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 10762,
                          "end": 10769,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 9
                            },
                            "end": {
                              "line": 334,
                              "column": 16
                            }
                          },
                          "name": "animate"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ObjectExpression",
                          "start": 10770,
                          "end": 10904,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 17
                            },
                            "end": {
                              "line": 339,
                              "column": 5
                            }
                          },
                          "properties": [
                            {
                              "type": "Property",
                              "start": 10780,
                              "end": 10898,
                              "loc": {
                                "start": {
                                  "line": 335,
                                  "column": 8
                                },
                                "end": {
                                  "line": 338,
                                  "column": 9
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 10780,
                                "end": 10789,
                                "loc": {
                                  "start": {
                                    "line": 335,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 335,
                                    "column": 17
                                  }
                                },
                                "name": "materials"
                              },
                              "value": {
                                "type": "ObjectExpression",
                                "start": 10791,
                                "end": 10898,
                                "loc": {
                                  "start": {
                                    "line": 335,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 338,
                                    "column": 9
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 10805,
                                    "end": 10840,
                                    "loc": {
                                      "start": {
                                        "line": 336,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 336,
                                        "column": 47
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 10805,
                                      "end": 10811,
                                      "loc": {
                                        "start": {
                                          "line": 336,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 336,
                                          "column": 18
                                        }
                                      },
                                      "name": "meshes"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 10813,
                                      "end": 10840,
                                      "loc": {
                                        "start": {
                                          "line": 336,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 336,
                                          "column": 47
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 10814,
                                          "end": 10839,
                                          "loc": {
                                            "start": {
                                              "line": 336,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 336,
                                              "column": 46
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 10816,
                                              "end": 10837,
                                              "loc": {
                                                "start": {
                                                  "line": 336,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 336,
                                                  "column": 44
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 10816,
                                                "end": 10823,
                                                "loc": {
                                                  "start": {
                                                    "line": 336,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 336,
                                                    "column": 30
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "LogicalExpression",
                                                "start": 10825,
                                                "end": 10837,
                                                "loc": {
                                                  "start": {
                                                    "line": 336,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 336,
                                                    "column": 44
                                                  }
                                                },
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 10825,
                                                  "end": 10830,
                                                  "loc": {
                                                    "start": {
                                                      "line": 336,
                                                      "column": 32
                                                    },
                                                    "end": {
                                                      "line": 336,
                                                      "column": 37
                                                    }
                                                  },
                                                  "name": "value"
                                                },
                                                "operator": "||",
                                                "right": {
                                                  "type": "Literal",
                                                  "start": 10834,
                                                  "end": 10837,
                                                  "loc": {
                                                    "start": {
                                                      "line": 336,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 336,
                                                      "column": 44
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1.0"
                                                }
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  },
                                  {
                                    "type": "Property",
                                    "start": 10854,
                                    "end": 10888,
                                    "loc": {
                                      "start": {
                                        "line": 337,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 337,
                                        "column": 46
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 10854,
                                      "end": 10859,
                                      "loc": {
                                        "start": {
                                          "line": 337,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 337,
                                          "column": 17
                                        }
                                      },
                                      "name": "lines"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 10861,
                                      "end": 10888,
                                      "loc": {
                                        "start": {
                                          "line": 337,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 337,
                                          "column": 46
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 10862,
                                          "end": 10887,
                                          "loc": {
                                            "start": {
                                              "line": 337,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 337,
                                              "column": 45
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 10864,
                                              "end": 10885,
                                              "loc": {
                                                "start": {
                                                  "line": 337,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 337,
                                                  "column": 43
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 10864,
                                                "end": 10871,
                                                "loc": {
                                                  "start": {
                                                    "line": 337,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 337,
                                                    "column": 29
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "LogicalExpression",
                                                "start": 10873,
                                                "end": 10885,
                                                "loc": {
                                                  "start": {
                                                    "line": 337,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 337,
                                                    "column": 43
                                                  }
                                                },
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 10873,
                                                  "end": 10878,
                                                  "loc": {
                                                    "start": {
                                                      "line": 337,
                                                      "column": 31
                                                    },
                                                    "end": {
                                                      "line": 337,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "value"
                                                },
                                                "operator": "||",
                                                "right": {
                                                  "type": "Literal",
                                                  "start": 10882,
                                                  "end": 10885,
                                                  "loc": {
                                                    "start": {
                                                      "line": 337,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 337,
                                                      "column": 43
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1.0"
                                                }
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  }
                                ]
                              },
                              "kind": "init"
                            }
                          ]
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10906,
                      "end": 10911,
                      "loc": {
                        "start": {
                          "line": 339,
                          "column": 7
                        },
                        "end": {
                          "line": 339,
                          "column": 12
                        }
                      },
                      "name": "start"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "LogicalExpression",
                      "start": 10912,
                      "end": 10923,
                      "loc": {
                        "start": {
                          "line": 339,
                          "column": 13
                        },
                        "end": {
                          "line": 339,
                          "column": 24
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 10912,
                        "end": 10918,
                        "loc": {
                          "start": {
                            "line": 339,
                            "column": 13
                          },
                          "end": {
                            "line": 339,
                            "column": 19
                          }
                        },
                        "name": "length"
                      },
                      "operator": "||",
                      "right": {
                        "type": "Literal",
                        "start": 10922,
                        "end": 10923,
                        "loc": {
                          "start": {
                            "line": 339,
                            "column": 23
                          },
                          "end": {
                            "line": 339,
                            "column": 24
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 10930,
                "end": 10942,
                "loc": {
                  "start": {
                    "line": 340,
                    "column": 4
                  },
                  "end": {
                    "line": 340,
                    "column": 16
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 10937,
                  "end": 10941,
                  "loc": {
                    "start": {
                      "line": 340,
                      "column": 11
                    },
                    "end": {
                      "line": 340,
                      "column": 15
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10946,
      "end": 11053,
      "loc": {
        "start": {
          "line": 343,
          "column": 0
        },
        "end": {
          "line": 345,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10946,
        "end": 11053,
        "loc": {
          "start": {
            "line": 343,
            "column": 0
          },
          "end": {
            "line": 345,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10946,
          "end": 10980,
          "loc": {
            "start": {
              "line": 343,
              "column": 0
            },
            "end": {
              "line": 343,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10946,
            "end": 10970,
            "loc": {
              "start": {
                "line": 343,
                "column": 0
              },
              "end": {
                "line": 343,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10946,
              "end": 10960,
              "loc": {
                "start": {
                  "line": 343,
                  "column": 0
                },
                "end": {
                  "line": 343,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10946,
                "end": 10951,
                "loc": {
                  "start": {
                    "line": 343,
                    "column": 0
                  },
                  "end": {
                    "line": 343,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10952,
                "end": 10960,
                "loc": {
                  "start": {
                    "line": 343,
                    "column": 6
                  },
                  "end": {
                    "line": 343,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10961,
              "end": 10970,
              "loc": {
                "start": {
                  "line": 343,
                  "column": 15
                },
                "end": {
                  "line": 343,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10971,
            "end": 10980,
            "loc": {
              "start": {
                "line": 343,
                "column": 25
              },
              "end": {
                "line": 343,
                "column": 34
              }
            },
            "name": "setValues"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10983,
          "end": 11053,
          "loc": {
            "start": {
              "line": 343,
              "column": 37
            },
            "end": {
              "line": 345,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10971,
            "end": 10980,
            "loc": {
              "start": {
                "line": 343,
                "column": 25
              },
              "end": {
                "line": 343,
                "column": 34
              }
            },
            "name": "setValues"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10992,
              "end": 11002,
              "loc": {
                "start": {
                  "line": 343,
                  "column": 46
                },
                "end": {
                  "line": 343,
                  "column": 56
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11004,
            "end": 11053,
            "loc": {
              "start": {
                "line": 343,
                "column": 58
              },
              "end": {
                "line": 345,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 11007,
                "end": 11051,
                "loc": {
                  "start": {
                    "line": 344,
                    "column": 1
                  },
                  "end": {
                    "line": 344,
                    "column": 45
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 11014,
                  "end": 11050,
                  "loc": {
                    "start": {
                      "line": 344,
                      "column": 8
                    },
                    "end": {
                      "line": 344,
                      "column": 44
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 11014,
                    "end": 11047,
                    "loc": {
                      "start": {
                        "line": 344,
                        "column": 8
                      },
                      "end": {
                        "line": 344,
                        "column": 41
                      }
                    },
                    "object": {
                      "type": "NewExpression",
                      "start": 11014,
                      "end": 11041,
                      "loc": {
                        "start": {
                          "line": 344,
                          "column": 8
                        },
                        "end": {
                          "line": 344,
                          "column": 35
                        }
                      },
                      "callee": {
                        "type": "Identifier",
                        "start": 11018,
                        "end": 11023,
                        "loc": {
                          "start": {
                            "line": 344,
                            "column": 12
                          },
                          "end": {
                            "line": 344,
                            "column": 17
                          }
                        },
                        "name": "Tween"
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 11024,
                          "end": 11028,
                          "loc": {
                            "start": {
                              "line": 344,
                              "column": 18
                            },
                            "end": {
                              "line": 344,
                              "column": 22
                            }
                          }
                        },
                        {
                          "type": "Identifier",
                          "start": 11030,
                          "end": 11040,
                          "loc": {
                            "start": {
                              "line": 344,
                              "column": 24
                            },
                            "end": {
                              "line": 344,
                              "column": 34
                            }
                          },
                          "name": "properties"
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11042,
                      "end": 11047,
                      "loc": {
                        "start": {
                          "line": 344,
                          "column": 36
                        },
                        "end": {
                          "line": 344,
                          "column": 41
                        }
                      },
                      "name": "start"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Literal",
                      "start": 11048,
                      "end": 11049,
                      "loc": {
                        "start": {
                          "line": 344,
                          "column": 42
                        },
                        "end": {
                          "line": 344,
                          "column": 43
                        }
                      },
                      "value": 0,
                      "rawValue": 0,
                      "raw": "0"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11055,
      "end": 11262,
      "loc": {
        "start": {
          "line": 347,
          "column": 0
        },
        "end": {
          "line": 353,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11055,
        "end": 11262,
        "loc": {
          "start": {
            "line": 347,
            "column": 0
          },
          "end": {
            "line": 353,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11055,
          "end": 11084,
          "loc": {
            "start": {
              "line": 347,
              "column": 0
            },
            "end": {
              "line": 347,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11055,
            "end": 11079,
            "loc": {
              "start": {
                "line": 347,
                "column": 0
              },
              "end": {
                "line": 347,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11055,
              "end": 11069,
              "loc": {
                "start": {
                  "line": 347,
                  "column": 0
                },
                "end": {
                  "line": 347,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11055,
                "end": 11060,
                "loc": {
                  "start": {
                    "line": 347,
                    "column": 0
                  },
                  "end": {
                    "line": 347,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11061,
                "end": 11069,
                "loc": {
                  "start": {
                    "line": 347,
                    "column": 6
                  },
                  "end": {
                    "line": 347,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11070,
              "end": 11079,
              "loc": {
                "start": {
                  "line": 347,
                  "column": 15
                },
                "end": {
                  "line": 347,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11080,
            "end": 11084,
            "loc": {
              "start": {
                "line": 347,
                "column": 25
              },
              "end": {
                "line": 347,
                "column": 29
              }
            },
            "name": "root"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11087,
          "end": 11262,
          "loc": {
            "start": {
              "line": 347,
              "column": 32
            },
            "end": {
              "line": 353,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11080,
            "end": 11084,
            "loc": {
              "start": {
                "line": 347,
                "column": 25
              },
              "end": {
                "line": 347,
                "column": 29
              }
            },
            "name": "root"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 11098,
            "end": 11262,
            "loc": {
              "start": {
                "line": 347,
                "column": 43
              },
              "end": {
                "line": 353,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 11101,
                "end": 11128,
                "loc": {
                  "start": {
                    "line": 348,
                    "column": 1
                  },
                  "end": {
                    "line": 348,
                    "column": 28
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 11105,
                    "end": 11111,
                    "loc": {
                      "start": {
                        "line": 348,
                        "column": 5
                      },
                      "end": {
                        "line": 348,
                        "column": 11
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 11105,
                      "end": 11111,
                      "loc": {
                        "start": {
                          "line": 348,
                          "column": 5
                        },
                        "end": {
                          "line": 348,
                          "column": 11
                        }
                      },
                      "name": "result"
                    },
                    "init": null
                  },
                  {
                    "type": "VariableDeclarator",
                    "start": 11113,
                    "end": 11127,
                    "loc": {
                      "start": {
                        "line": 348,
                        "column": 13
                      },
                      "end": {
                        "line": 348,
                        "column": 27
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 11113,
                      "end": 11120,
                      "loc": {
                        "start": {
                          "line": 348,
                          "column": 13
                        },
                        "end": {
                          "line": 348,
                          "column": 20
                        }
                      },
                      "name": "current"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 11123,
                      "end": 11127,
                      "loc": {
                        "start": {
                          "line": 348,
                          "column": 23
                        },
                        "end": {
                          "line": 348,
                          "column": 27
                        }
                      }
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "WhileStatement",
                "start": 11130,
                "end": 11260,
                "loc": {
                  "start": {
                    "line": 349,
                    "column": 1
                  },
                  "end": {
                    "line": 352,
                    "column": 2
                  }
                },
                "test": {
                  "type": "Identifier",
                  "start": 11137,
                  "end": 11144,
                  "loc": {
                    "start": {
                      "line": 349,
                      "column": 8
                    },
                    "end": {
                      "line": 349,
                      "column": 15
                    }
                  },
                  "name": "current"
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 11146,
                  "end": 11260,
                  "loc": {
                    "start": {
                      "line": 349,
                      "column": 17
                    },
                    "end": {
                      "line": 352,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 11150,
                      "end": 11229,
                      "loc": {
                        "start": {
                          "line": 350,
                          "column": 2
                        },
                        "end": {
                          "line": 350,
                          "column": 81
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 11154,
                        "end": 11212,
                        "loc": {
                          "start": {
                            "line": 350,
                            "column": 6
                          },
                          "end": {
                            "line": 350,
                            "column": 64
                          }
                        },
                        "left": {
                          "type": "UnaryExpression",
                          "start": 11154,
                          "end": 11171,
                          "loc": {
                            "start": {
                              "line": 350,
                              "column": 6
                            },
                            "end": {
                              "line": 350,
                              "column": 23
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 11155,
                            "end": 11171,
                            "loc": {
                              "start": {
                                "line": 350,
                                "column": 7
                              },
                              "end": {
                                "line": 350,
                                "column": 23
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "UnaryExpression",
                              "start": 11156,
                              "end": 11171,
                              "loc": {
                                "start": {
                                  "line": 350,
                                  "column": 8
                                },
                                "end": {
                                  "line": 350,
                                  "column": 23
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "MemberExpression",
                                "start": 11157,
                                "end": 11171,
                                "loc": {
                                  "start": {
                                    "line": 350,
                                    "column": 9
                                  },
                                  "end": {
                                    "line": 350,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 11157,
                                  "end": 11164,
                                  "loc": {
                                    "start": {
                                      "line": 350,
                                      "column": 9
                                    },
                                    "end": {
                                      "line": 350,
                                      "column": 16
                                    }
                                  },
                                  "name": "current"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11165,
                                  "end": 11171,
                                  "loc": {
                                    "start": {
                                      "line": 350,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 350,
                                      "column": 23
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              }
                            }
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 11175,
                          "end": 11212,
                          "loc": {
                            "start": {
                              "line": 350,
                              "column": 27
                            },
                            "end": {
                              "line": 350,
                              "column": 64
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 11175,
                            "end": 11189,
                            "loc": {
                              "start": {
                                "line": 350,
                                "column": 27
                              },
                              "end": {
                                "line": 350,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 11175,
                              "end": 11182,
                              "loc": {
                                "start": {
                                  "line": 350,
                                  "column": 27
                                },
                                "end": {
                                  "line": 350,
                                  "column": 34
                                }
                              },
                              "name": "current"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11183,
                              "end": 11189,
                              "loc": {
                                "start": {
                                  "line": 350,
                                  "column": 35
                                },
                                "end": {
                                  "line": 350,
                                  "column": 41
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          },
                          "operator": "instanceof",
                          "right": {
                            "type": "MemberExpression",
                            "start": 11201,
                            "end": 11212,
                            "loc": {
                              "start": {
                                "line": 350,
                                "column": 53
                              },
                              "end": {
                                "line": 350,
                                "column": 64
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 11201,
                              "end": 11206,
                              "loc": {
                                "start": {
                                  "line": 350,
                                  "column": 53
                                },
                                "end": {
                                  "line": 350,
                                  "column": 58
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11207,
                              "end": 11212,
                              "loc": {
                                "start": {
                                  "line": 350,
                                  "column": 59
                                },
                                "end": {
                                  "line": 350,
                                  "column": 64
                                }
                              },
                              "name": "Scene"
                            },
                            "computed": false
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 11214,
                        "end": 11229,
                        "loc": {
                          "start": {
                            "line": 350,
                            "column": 66
                          },
                          "end": {
                            "line": 350,
                            "column": 81
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 11221,
                          "end": 11228,
                          "loc": {
                            "start": {
                              "line": 350,
                              "column": 73
                            },
                            "end": {
                              "line": 350,
                              "column": 80
                            }
                          },
                          "name": "current"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11232,
                      "end": 11257,
                      "loc": {
                        "start": {
                          "line": 351,
                          "column": 2
                        },
                        "end": {
                          "line": 351,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11232,
                        "end": 11256,
                        "loc": {
                          "start": {
                            "line": 351,
                            "column": 2
                          },
                          "end": {
                            "line": 351,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 11232,
                          "end": 11239,
                          "loc": {
                            "start": {
                              "line": 351,
                              "column": 2
                            },
                            "end": {
                              "line": 351,
                              "column": 9
                            }
                          },
                          "name": "current"
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 11242,
                          "end": 11256,
                          "loc": {
                            "start": {
                              "line": 351,
                              "column": 12
                            },
                            "end": {
                              "line": 351,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11242,
                            "end": 11249,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 12
                              },
                              "end": {
                                "line": 351,
                                "column": 19
                              }
                            },
                            "name": "current"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11250,
                            "end": 11256,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 20
                              },
                              "end": {
                                "line": 351,
                                "column": 26
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        }
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11264,
      "end": 11367,
      "loc": {
        "start": {
          "line": 355,
          "column": 0
        },
        "end": {
          "line": 357,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11264,
        "end": 11367,
        "loc": {
          "start": {
            "line": 355,
            "column": 0
          },
          "end": {
            "line": 357,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11264,
          "end": 11293,
          "loc": {
            "start": {
              "line": 355,
              "column": 0
            },
            "end": {
              "line": 355,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11264,
            "end": 11288,
            "loc": {
              "start": {
                "line": 355,
                "column": 0
              },
              "end": {
                "line": 355,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11264,
              "end": 11278,
              "loc": {
                "start": {
                  "line": 355,
                  "column": 0
                },
                "end": {
                  "line": 355,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11264,
                "end": 11269,
                "loc": {
                  "start": {
                    "line": 355,
                    "column": 0
                  },
                  "end": {
                    "line": 355,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11270,
                "end": 11278,
                "loc": {
                  "start": {
                    "line": 355,
                    "column": 6
                  },
                  "end": {
                    "line": 355,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11279,
              "end": 11288,
              "loc": {
                "start": {
                  "line": 355,
                  "column": 15
                },
                "end": {
                  "line": 355,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11289,
            "end": 11293,
            "loc": {
              "start": {
                "line": 355,
                "column": 25
              },
              "end": {
                "line": 355,
                "column": 29
              }
            },
            "name": "pwtl"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11296,
          "end": 11367,
          "loc": {
            "start": {
              "line": 355,
              "column": 32
            },
            "end": {
              "line": 357,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11289,
            "end": 11293,
            "loc": {
              "start": {
                "line": 355,
                "column": 25
              },
              "end": {
                "line": 355,
                "column": 29
              }
            },
            "name": "pwtl"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 11305,
              "end": 11310,
              "loc": {
                "start": {
                  "line": 355,
                  "column": 41
                },
                "end": {
                  "line": 355,
                  "column": 46
                }
              },
              "name": "point"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11312,
            "end": 11367,
            "loc": {
              "start": {
                "line": 355,
                "column": 48
              },
              "end": {
                "line": 357,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 11318,
                "end": 11365,
                "loc": {
                  "start": {
                    "line": 356,
                    "column": 4
                  },
                  "end": {
                    "line": 356,
                    "column": 51
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 11325,
                  "end": 11364,
                  "loc": {
                    "start": {
                      "line": 356,
                      "column": 11
                    },
                    "end": {
                      "line": 356,
                      "column": 50
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 11325,
                    "end": 11349,
                    "loc": {
                      "start": {
                        "line": 356,
                        "column": 11
                      },
                      "end": {
                        "line": 356,
                        "column": 35
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 11325,
                      "end": 11336,
                      "loc": {
                        "start": {
                          "line": 356,
                          "column": 11
                        },
                        "end": {
                          "line": 356,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 11325,
                        "end": 11329,
                        "loc": {
                          "start": {
                            "line": 356,
                            "column": 11
                          },
                          "end": {
                            "line": 356,
                            "column": 15
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11330,
                        "end": 11336,
                        "loc": {
                          "start": {
                            "line": 356,
                            "column": 16
                          },
                          "end": {
                            "line": 356,
                            "column": 22
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11337,
                      "end": 11349,
                      "loc": {
                        "start": {
                          "line": 356,
                          "column": 23
                        },
                        "end": {
                          "line": 356,
                          "column": 35
                        }
                      },
                      "name": "worldToLocal"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "CallExpression",
                      "start": 11350,
                      "end": 11363,
                      "loc": {
                        "start": {
                          "line": 356,
                          "column": 36
                        },
                        "end": {
                          "line": 356,
                          "column": 49
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 11350,
                        "end": 11361,
                        "loc": {
                          "start": {
                            "line": 356,
                            "column": 36
                          },
                          "end": {
                            "line": 356,
                            "column": 47
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 11350,
                          "end": 11355,
                          "loc": {
                            "start": {
                              "line": 356,
                              "column": 36
                            },
                            "end": {
                              "line": 356,
                              "column": 41
                            }
                          },
                          "name": "point"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11356,
                          "end": 11361,
                          "loc": {
                            "start": {
                              "line": 356,
                              "column": 42
                            },
                            "end": {
                              "line": 356,
                              "column": 47
                            }
                          },
                          "name": "clone"
                        },
                        "computed": false
                      },
                      "arguments": []
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11369,
      "end": 11472,
      "loc": {
        "start": {
          "line": 359,
          "column": 0
        },
        "end": {
          "line": 361,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11369,
        "end": 11472,
        "loc": {
          "start": {
            "line": 359,
            "column": 0
          },
          "end": {
            "line": 361,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11369,
          "end": 11398,
          "loc": {
            "start": {
              "line": 359,
              "column": 0
            },
            "end": {
              "line": 359,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11369,
            "end": 11393,
            "loc": {
              "start": {
                "line": 359,
                "column": 0
              },
              "end": {
                "line": 359,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11369,
              "end": 11383,
              "loc": {
                "start": {
                  "line": 359,
                  "column": 0
                },
                "end": {
                  "line": 359,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11369,
                "end": 11374,
                "loc": {
                  "start": {
                    "line": 359,
                    "column": 0
                  },
                  "end": {
                    "line": 359,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11375,
                "end": 11383,
                "loc": {
                  "start": {
                    "line": 359,
                    "column": 6
                  },
                  "end": {
                    "line": 359,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11384,
              "end": 11393,
              "loc": {
                "start": {
                  "line": 359,
                  "column": 15
                },
                "end": {
                  "line": 359,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11394,
            "end": 11398,
            "loc": {
              "start": {
                "line": 359,
                "column": 25
              },
              "end": {
                "line": 359,
                "column": 29
              }
            },
            "name": "pltw"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11401,
          "end": 11472,
          "loc": {
            "start": {
              "line": 359,
              "column": 32
            },
            "end": {
              "line": 361,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11394,
            "end": 11398,
            "loc": {
              "start": {
                "line": 359,
                "column": 25
              },
              "end": {
                "line": 359,
                "column": 29
              }
            },
            "name": "pltw"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 11410,
              "end": 11415,
              "loc": {
                "start": {
                  "line": 359,
                  "column": 41
                },
                "end": {
                  "line": 359,
                  "column": 46
                }
              },
              "name": "point"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11417,
            "end": 11472,
            "loc": {
              "start": {
                "line": 359,
                "column": 48
              },
              "end": {
                "line": 361,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 11423,
                "end": 11470,
                "loc": {
                  "start": {
                    "line": 360,
                    "column": 4
                  },
                  "end": {
                    "line": 360,
                    "column": 51
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 11430,
                  "end": 11469,
                  "loc": {
                    "start": {
                      "line": 360,
                      "column": 11
                    },
                    "end": {
                      "line": 360,
                      "column": 50
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 11430,
                    "end": 11454,
                    "loc": {
                      "start": {
                        "line": 360,
                        "column": 11
                      },
                      "end": {
                        "line": 360,
                        "column": 35
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 11430,
                      "end": 11441,
                      "loc": {
                        "start": {
                          "line": 360,
                          "column": 11
                        },
                        "end": {
                          "line": 360,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 11430,
                        "end": 11434,
                        "loc": {
                          "start": {
                            "line": 360,
                            "column": 11
                          },
                          "end": {
                            "line": 360,
                            "column": 15
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11435,
                        "end": 11441,
                        "loc": {
                          "start": {
                            "line": 360,
                            "column": 16
                          },
                          "end": {
                            "line": 360,
                            "column": 22
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11442,
                      "end": 11454,
                      "loc": {
                        "start": {
                          "line": 360,
                          "column": 23
                        },
                        "end": {
                          "line": 360,
                          "column": 35
                        }
                      },
                      "name": "localToWorld"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "CallExpression",
                      "start": 11455,
                      "end": 11468,
                      "loc": {
                        "start": {
                          "line": 360,
                          "column": 36
                        },
                        "end": {
                          "line": 360,
                          "column": 49
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 11455,
                        "end": 11466,
                        "loc": {
                          "start": {
                            "line": 360,
                            "column": 36
                          },
                          "end": {
                            "line": 360,
                            "column": 47
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 11455,
                          "end": 11460,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 36
                            },
                            "end": {
                              "line": 360,
                              "column": 41
                            }
                          },
                          "name": "point"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11461,
                          "end": 11466,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 42
                            },
                            "end": {
                              "line": 360,
                              "column": 47
                            }
                          },
                          "name": "clone"
                        },
                        "computed": false
                      },
                      "arguments": []
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11474,
      "end": 11655,
      "loc": {
        "start": {
          "line": 363,
          "column": 0
        },
        "end": {
          "line": 370,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11474,
        "end": 11655,
        "loc": {
          "start": {
            "line": 363,
            "column": 0
          },
          "end": {
            "line": 370,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11474,
          "end": 11508,
          "loc": {
            "start": {
              "line": 363,
              "column": 0
            },
            "end": {
              "line": 363,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11474,
            "end": 11498,
            "loc": {
              "start": {
                "line": 363,
                "column": 0
              },
              "end": {
                "line": 363,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11474,
              "end": 11488,
              "loc": {
                "start": {
                  "line": 363,
                  "column": 0
                },
                "end": {
                  "line": 363,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11474,
                "end": 11479,
                "loc": {
                  "start": {
                    "line": 363,
                    "column": 0
                  },
                  "end": {
                    "line": 363,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11480,
                "end": 11488,
                "loc": {
                  "start": {
                    "line": 363,
                    "column": 6
                  },
                  "end": {
                    "line": 363,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11489,
              "end": 11498,
              "loc": {
                "start": {
                  "line": 363,
                  "column": 15
                },
                "end": {
                  "line": 363,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11499,
            "end": 11508,
            "loc": {
              "start": {
                "line": 363,
                "column": 25
              },
              "end": {
                "line": 363,
                "column": 34
              }
            },
            "name": "isChildOf"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11511,
          "end": 11655,
          "loc": {
            "start": {
              "line": 363,
              "column": 37
            },
            "end": {
              "line": 370,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11499,
            "end": 11508,
            "loc": {
              "start": {
                "line": 363,
                "column": 25
              },
              "end": {
                "line": 363,
                "column": 34
              }
            },
            "name": "isChildOf"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 11520,
              "end": 11526,
              "loc": {
                "start": {
                  "line": 363,
                  "column": 46
                },
                "end": {
                  "line": 363,
                  "column": 52
                }
              },
              "name": "parent"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11528,
            "end": 11655,
            "loc": {
              "start": {
                "line": 363,
                "column": 54
              },
              "end": {
                "line": 370,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 11531,
                "end": 11550,
                "loc": {
                  "start": {
                    "line": 364,
                    "column": 1
                  },
                  "end": {
                    "line": 364,
                    "column": 20
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 11535,
                    "end": 11549,
                    "loc": {
                      "start": {
                        "line": 364,
                        "column": 5
                      },
                      "end": {
                        "line": 364,
                        "column": 19
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 11535,
                      "end": 11542,
                      "loc": {
                        "start": {
                          "line": 364,
                          "column": 5
                        },
                        "end": {
                          "line": 364,
                          "column": 12
                        }
                      },
                      "name": "current"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 11545,
                      "end": 11549,
                      "loc": {
                        "start": {
                          "line": 364,
                          "column": 15
                        },
                        "end": {
                          "line": 364,
                          "column": 19
                        }
                      }
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "WhileStatement",
                "start": 11552,
                "end": 11638,
                "loc": {
                  "start": {
                    "line": 365,
                    "column": 1
                  },
                  "end": {
                    "line": 368,
                    "column": 2
                  }
                },
                "test": {
                  "type": "Identifier",
                  "start": 11559,
                  "end": 11566,
                  "loc": {
                    "start": {
                      "line": 365,
                      "column": 8
                    },
                    "end": {
                      "line": 365,
                      "column": 15
                    }
                  },
                  "name": "current"
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 11568,
                  "end": 11638,
                  "loc": {
                    "start": {
                      "line": 365,
                      "column": 17
                    },
                    "end": {
                      "line": 368,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 11572,
                      "end": 11607,
                      "loc": {
                        "start": {
                          "line": 366,
                          "column": 2
                        },
                        "end": {
                          "line": 366,
                          "column": 37
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 11576,
                        "end": 11593,
                        "loc": {
                          "start": {
                            "line": 366,
                            "column": 6
                          },
                          "end": {
                            "line": 366,
                            "column": 23
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 11576,
                          "end": 11583,
                          "loc": {
                            "start": {
                              "line": 366,
                              "column": 6
                            },
                            "end": {
                              "line": 366,
                              "column": 13
                            }
                          },
                          "name": "current"
                        },
                        "operator": "==",
                        "right": {
                          "type": "Identifier",
                          "start": 11587,
                          "end": 11593,
                          "loc": {
                            "start": {
                              "line": 366,
                              "column": 17
                            },
                            "end": {
                              "line": 366,
                              "column": 23
                            }
                          },
                          "name": "parent"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 11595,
                        "end": 11607,
                        "loc": {
                          "start": {
                            "line": 366,
                            "column": 25
                          },
                          "end": {
                            "line": 366,
                            "column": 37
                          }
                        },
                        "argument": {
                          "type": "Literal",
                          "start": 11602,
                          "end": 11606,
                          "loc": {
                            "start": {
                              "line": 366,
                              "column": 32
                            },
                            "end": {
                              "line": 366,
                              "column": 36
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11610,
                      "end": 11635,
                      "loc": {
                        "start": {
                          "line": 367,
                          "column": 2
                        },
                        "end": {
                          "line": 367,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11610,
                        "end": 11634,
                        "loc": {
                          "start": {
                            "line": 367,
                            "column": 2
                          },
                          "end": {
                            "line": 367,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 11610,
                          "end": 11617,
                          "loc": {
                            "start": {
                              "line": 367,
                              "column": 2
                            },
                            "end": {
                              "line": 367,
                              "column": 9
                            }
                          },
                          "name": "current"
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 11620,
                          "end": 11634,
                          "loc": {
                            "start": {
                              "line": 367,
                              "column": 12
                            },
                            "end": {
                              "line": 367,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11620,
                            "end": 11627,
                            "loc": {
                              "start": {
                                "line": 367,
                                "column": 12
                              },
                              "end": {
                                "line": 367,
                                "column": 19
                              }
                            },
                            "name": "current"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11628,
                            "end": 11634,
                            "loc": {
                              "start": {
                                "line": 367,
                                "column": 20
                              },
                              "end": {
                                "line": 367,
                                "column": 26
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        }
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 11640,
                "end": 11653,
                "loc": {
                  "start": {
                    "line": 369,
                    "column": 1
                  },
                  "end": {
                    "line": 369,
                    "column": 14
                  }
                },
                "argument": {
                  "type": "Literal",
                  "start": 11647,
                  "end": 11652,
                  "loc": {
                    "start": {
                      "line": 369,
                      "column": 8
                    },
                    "end": {
                      "line": 369,
                      "column": 13
                    }
                  },
                  "value": false,
                  "rawValue": false,
                  "raw": "false"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11657,
      "end": 11966,
      "loc": {
        "start": {
          "line": 372,
          "column": 0
        },
        "end": {
          "line": 380,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11657,
        "end": 11966,
        "loc": {
          "start": {
            "line": 372,
            "column": 0
          },
          "end": {
            "line": 380,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11657,
          "end": 11691,
          "loc": {
            "start": {
              "line": 372,
              "column": 0
            },
            "end": {
              "line": 372,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11657,
            "end": 11681,
            "loc": {
              "start": {
                "line": 372,
                "column": 0
              },
              "end": {
                "line": 372,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11657,
              "end": 11671,
              "loc": {
                "start": {
                  "line": 372,
                  "column": 0
                },
                "end": {
                  "line": 372,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11657,
                "end": 11662,
                "loc": {
                  "start": {
                    "line": 372,
                    "column": 0
                  },
                  "end": {
                    "line": 372,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11663,
                "end": 11671,
                "loc": {
                  "start": {
                    "line": 372,
                    "column": 6
                  },
                  "end": {
                    "line": 372,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11672,
              "end": 11681,
              "loc": {
                "start": {
                  "line": 372,
                  "column": 15
                },
                "end": {
                  "line": 372,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11682,
            "end": 11691,
            "loc": {
              "start": {
                "line": 372,
                "column": 25
              },
              "end": {
                "line": 372,
                "column": 34
              }
            },
            "name": "isVisible"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11694,
          "end": 11966,
          "loc": {
            "start": {
              "line": 372,
              "column": 37
            },
            "end": {
              "line": 380,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11682,
            "end": 11691,
            "loc": {
              "start": {
                "line": 372,
                "column": 25
              },
              "end": {
                "line": 372,
                "column": 34
              }
            },
            "name": "isVisible"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 11705,
            "end": 11966,
            "loc": {
              "start": {
                "line": 372,
                "column": 48
              },
              "end": {
                "line": 380,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 11708,
                "end": 11804,
                "loc": {
                  "start": {
                    "line": 373,
                    "column": 1
                  },
                  "end": {
                    "line": 374,
                    "column": 75
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 11712,
                  "end": 11789,
                  "loc": {
                    "start": {
                      "line": 373,
                      "column": 5
                    },
                    "end": {
                      "line": 374,
                      "column": 60
                    }
                  },
                  "left": {
                    "type": "UnaryExpression",
                    "start": 11712,
                    "end": 11725,
                    "loc": {
                      "start": {
                        "line": 373,
                        "column": 5
                      },
                      "end": {
                        "line": 373,
                        "column": 18
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 11713,
                      "end": 11725,
                      "loc": {
                        "start": {
                          "line": 373,
                          "column": 6
                        },
                        "end": {
                          "line": 373,
                          "column": 18
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 11713,
                        "end": 11717,
                        "loc": {
                          "start": {
                            "line": 373,
                            "column": 6
                          },
                          "end": {
                            "line": 373,
                            "column": 10
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11718,
                        "end": 11725,
                        "loc": {
                          "start": {
                            "line": 373,
                            "column": 11
                          },
                          "end": {
                            "line": 373,
                            "column": 18
                          }
                        },
                        "name": "visible"
                      },
                      "computed": false
                    }
                  },
                  "operator": "||",
                  "right": {
                    "type": "LogicalExpression",
                    "start": 11732,
                    "end": 11788,
                    "loc": {
                      "start": {
                        "line": 374,
                        "column": 3
                      },
                      "end": {
                        "line": 374,
                        "column": 59
                      }
                    },
                    "left": {
                      "type": "BinaryExpression",
                      "start": 11732,
                      "end": 11758,
                      "loc": {
                        "start": {
                          "line": 374,
                          "column": 3
                        },
                        "end": {
                          "line": 374,
                          "column": 29
                        }
                      },
                      "left": {
                        "type": "ThisExpression",
                        "start": 11732,
                        "end": 11736,
                        "loc": {
                          "start": {
                            "line": 374,
                            "column": 3
                          },
                          "end": {
                            "line": 374,
                            "column": 7
                          }
                        }
                      },
                      "operator": "instanceof",
                      "right": {
                        "type": "MemberExpression",
                        "start": 11748,
                        "end": 11758,
                        "loc": {
                          "start": {
                            "line": 374,
                            "column": 19
                          },
                          "end": {
                            "line": 374,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 11748,
                          "end": 11753,
                          "loc": {
                            "start": {
                              "line": 374,
                              "column": 19
                            },
                            "end": {
                              "line": 374,
                              "column": 24
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11754,
                          "end": 11758,
                          "loc": {
                            "start": {
                              "line": 374,
                              "column": 25
                            },
                            "end": {
                              "line": 374,
                              "column": 29
                            }
                          },
                          "name": "Mesh"
                        },
                        "computed": false
                      }
                    },
                    "operator": "&&",
                    "right": {
                      "type": "BinaryExpression",
                      "start": 11762,
                      "end": 11788,
                      "loc": {
                        "start": {
                          "line": 374,
                          "column": 33
                        },
                        "end": {
                          "line": 374,
                          "column": 59
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 11762,
                        "end": 11783,
                        "loc": {
                          "start": {
                            "line": 374,
                            "column": 33
                          },
                          "end": {
                            "line": 374,
                            "column": 54
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 11762,
                          "end": 11775,
                          "loc": {
                            "start": {
                              "line": 374,
                              "column": 33
                            },
                            "end": {
                              "line": 374,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11762,
                            "end": 11766,
                            "loc": {
                              "start": {
                                "line": 374,
                                "column": 33
                              },
                              "end": {
                                "line": 374,
                                "column": 37
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11767,
                            "end": 11775,
                            "loc": {
                              "start": {
                                "line": 374,
                                "column": 38
                              },
                              "end": {
                                "line": 374,
                                "column": 46
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11776,
                          "end": 11783,
                          "loc": {
                            "start": {
                              "line": 374,
                              "column": 47
                            },
                            "end": {
                              "line": 374,
                              "column": 54
                            }
                          },
                          "name": "opacity"
                        },
                        "computed": false
                      },
                      "operator": "==",
                      "right": {
                        "type": "Literal",
                        "start": 11787,
                        "end": 11788,
                        "loc": {
                          "start": {
                            "line": 374,
                            "column": 58
                          },
                          "end": {
                            "line": 374,
                            "column": 59
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    },
                    "parenthesizedExpression": true
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 11791,
                  "end": 11804,
                  "loc": {
                    "start": {
                      "line": 374,
                      "column": 62
                    },
                    "end": {
                      "line": 374,
                      "column": 75
                    }
                  },
                  "argument": {
                    "type": "Literal",
                    "start": 11798,
                    "end": 11803,
                    "loc": {
                      "start": {
                        "line": 374,
                        "column": 69
                      },
                      "end": {
                        "line": 374,
                        "column": 74
                      }
                    },
                    "value": false,
                    "rawValue": false,
                    "raw": "false"
                  }
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 11806,
                "end": 11949,
                "loc": {
                  "start": {
                    "line": 375,
                    "column": 1
                  },
                  "end": {
                    "line": 378,
                    "column": 33
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 11810,
                  "end": 11867,
                  "loc": {
                    "start": {
                      "line": 375,
                      "column": 5
                    },
                    "end": {
                      "line": 375,
                      "column": 62
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 11810,
                    "end": 11829,
                    "loc": {
                      "start": {
                        "line": 375,
                        "column": 5
                      },
                      "end": {
                        "line": 375,
                        "column": 24
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 11810,
                      "end": 11821,
                      "loc": {
                        "start": {
                          "line": 375,
                          "column": 5
                        },
                        "end": {
                          "line": 375,
                          "column": 16
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 11810,
                        "end": 11814,
                        "loc": {
                          "start": {
                            "line": 375,
                            "column": 5
                          },
                          "end": {
                            "line": 375,
                            "column": 9
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11815,
                        "end": 11821,
                        "loc": {
                          "start": {
                            "line": 375,
                            "column": 10
                          },
                          "end": {
                            "line": 375,
                            "column": 16
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "operator": "==",
                    "right": {
                      "type": "Literal",
                      "start": 11825,
                      "end": 11829,
                      "loc": {
                        "start": {
                          "line": 375,
                          "column": 20
                        },
                        "end": {
                          "line": 375,
                          "column": 24
                        }
                      },
                      "value": null,
                      "rawValue": null,
                      "raw": "null"
                    }
                  },
                  "operator": "||",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 11833,
                    "end": 11867,
                    "loc": {
                      "start": {
                        "line": 375,
                        "column": 28
                      },
                      "end": {
                        "line": 375,
                        "column": 62
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 11833,
                      "end": 11844,
                      "loc": {
                        "start": {
                          "line": 375,
                          "column": 28
                        },
                        "end": {
                          "line": 375,
                          "column": 39
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 11833,
                        "end": 11837,
                        "loc": {
                          "start": {
                            "line": 375,
                            "column": 28
                          },
                          "end": {
                            "line": 375,
                            "column": 32
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11838,
                        "end": 11844,
                        "loc": {
                          "start": {
                            "line": 375,
                            "column": 33
                          },
                          "end": {
                            "line": 375,
                            "column": 39
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "MemberExpression",
                      "start": 11856,
                      "end": 11867,
                      "loc": {
                        "start": {
                          "line": 375,
                          "column": 51
                        },
                        "end": {
                          "line": 375,
                          "column": 62
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 11856,
                        "end": 11861,
                        "loc": {
                          "start": {
                            "line": 375,
                            "column": 51
                          },
                          "end": {
                            "line": 375,
                            "column": 56
                          }
                        },
                        "name": "THREE"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11862,
                        "end": 11867,
                        "loc": {
                          "start": {
                            "line": 375,
                            "column": 57
                          },
                          "end": {
                            "line": 375,
                            "column": 62
                          }
                        },
                        "name": "Scene"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 11871,
                  "end": 11891,
                  "loc": {
                    "start": {
                      "line": 376,
                      "column": 2
                    },
                    "end": {
                      "line": 376,
                      "column": 22
                    }
                  },
                  "argument": {
                    "type": "MemberExpression",
                    "start": 11878,
                    "end": 11890,
                    "loc": {
                      "start": {
                        "line": 376,
                        "column": 9
                      },
                      "end": {
                        "line": 376,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 11878,
                      "end": 11882,
                      "loc": {
                        "start": {
                          "line": 376,
                          "column": 9
                        },
                        "end": {
                          "line": 376,
                          "column": 13
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11883,
                      "end": 11890,
                      "loc": {
                        "start": {
                          "line": 376,
                          "column": 14
                        },
                        "end": {
                          "line": 376,
                          "column": 21
                        }
                      },
                      "name": "visible"
                    },
                    "computed": false
                  }
                },
                "alternate": {
                  "type": "IfStatement",
                  "start": 11898,
                  "end": 11949,
                  "loc": {
                    "start": {
                      "line": 377,
                      "column": 6
                    },
                    "end": {
                      "line": 378,
                      "column": 33
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 11902,
                    "end": 11914,
                    "loc": {
                      "start": {
                        "line": 377,
                        "column": 10
                      },
                      "end": {
                        "line": 377,
                        "column": 22
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 11902,
                      "end": 11906,
                      "loc": {
                        "start": {
                          "line": 377,
                          "column": 10
                        },
                        "end": {
                          "line": 377,
                          "column": 14
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11907,
                      "end": 11914,
                      "loc": {
                        "start": {
                          "line": 377,
                          "column": 15
                        },
                        "end": {
                          "line": 377,
                          "column": 22
                        }
                      },
                      "name": "visible"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "ReturnStatement",
                    "start": 11918,
                    "end": 11949,
                    "loc": {
                      "start": {
                        "line": 378,
                        "column": 2
                      },
                      "end": {
                        "line": 378,
                        "column": 33
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 11925,
                      "end": 11948,
                      "loc": {
                        "start": {
                          "line": 378,
                          "column": 9
                        },
                        "end": {
                          "line": 378,
                          "column": 32
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 11925,
                        "end": 11946,
                        "loc": {
                          "start": {
                            "line": 378,
                            "column": 9
                          },
                          "end": {
                            "line": 378,
                            "column": 30
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 11925,
                          "end": 11936,
                          "loc": {
                            "start": {
                              "line": 378,
                              "column": 9
                            },
                            "end": {
                              "line": 378,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11925,
                            "end": 11929,
                            "loc": {
                              "start": {
                                "line": 378,
                                "column": 9
                              },
                              "end": {
                                "line": 378,
                                "column": 13
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11930,
                            "end": 11936,
                            "loc": {
                              "start": {
                                "line": 378,
                                "column": 14
                              },
                              "end": {
                                "line": 378,
                                "column": 20
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11937,
                          "end": 11946,
                          "loc": {
                            "start": {
                              "line": 378,
                              "column": 21
                            },
                            "end": {
                              "line": 378,
                              "column": 30
                            }
                          },
                          "name": "isVisible"
                        },
                        "computed": false
                      },
                      "arguments": []
                    }
                  },
                  "alternate": null
                }
              },
              {
                "type": "ReturnStatement",
                "start": 11951,
                "end": 11964,
                "loc": {
                  "start": {
                    "line": 379,
                    "column": 1
                  },
                  "end": {
                    "line": 379,
                    "column": 14
                  }
                },
                "argument": {
                  "type": "Literal",
                  "start": 11958,
                  "end": 11963,
                  "loc": {
                    "start": {
                      "line": 379,
                      "column": 8
                    },
                    "end": {
                      "line": 379,
                      "column": 13
                    }
                  },
                  "value": false,
                  "rawValue": false,
                  "raw": "false"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11968,
      "end": 12187,
      "loc": {
        "start": {
          "line": 382,
          "column": 0
        },
        "end": {
          "line": 390,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11968,
        "end": 12187,
        "loc": {
          "start": {
            "line": 382,
            "column": 0
          },
          "end": {
            "line": 390,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11968,
          "end": 11997,
          "loc": {
            "start": {
              "line": 382,
              "column": 0
            },
            "end": {
              "line": 382,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11968,
            "end": 11992,
            "loc": {
              "start": {
                "line": 382,
                "column": 0
              },
              "end": {
                "line": 382,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11968,
              "end": 11982,
              "loc": {
                "start": {
                  "line": 382,
                  "column": 0
                },
                "end": {
                  "line": 382,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11968,
                "end": 11973,
                "loc": {
                  "start": {
                    "line": 382,
                    "column": 0
                  },
                  "end": {
                    "line": 382,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11974,
                "end": 11982,
                "loc": {
                  "start": {
                    "line": 382,
                    "column": 6
                  },
                  "end": {
                    "line": 382,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11983,
              "end": 11992,
              "loc": {
                "start": {
                  "line": 382,
                  "column": 15
                },
                "end": {
                  "line": 382,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11993,
            "end": 11997,
            "loc": {
              "start": {
                "line": 382,
                "column": 25
              },
              "end": {
                "line": 382,
                "column": 29
              }
            },
            "name": "find"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12000,
          "end": 12187,
          "loc": {
            "start": {
              "line": 382,
              "column": 32
            },
            "end": {
              "line": 390,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11993,
            "end": 11997,
            "loc": {
              "start": {
                "line": 382,
                "column": 25
              },
              "end": {
                "line": 382,
                "column": 29
              }
            },
            "name": "find"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12009,
              "end": 12018,
              "loc": {
                "start": {
                  "line": 382,
                  "column": 41
                },
                "end": {
                  "line": 382,
                  "column": 50
                }
              },
              "name": "condition"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 12020,
            "end": 12187,
            "loc": {
              "start": {
                "line": 382,
                "column": 52
              },
              "end": {
                "line": 390,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 12023,
                "end": 12064,
                "loc": {
                  "start": {
                    "line": 383,
                    "column": 1
                  },
                  "end": {
                    "line": 384,
                    "column": 20
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 12027,
                  "end": 12042,
                  "loc": {
                    "start": {
                      "line": 383,
                      "column": 5
                    },
                    "end": {
                      "line": 383,
                      "column": 20
                    }
                  },
                  "callee": {
                    "type": "Identifier",
                    "start": 12027,
                    "end": 12036,
                    "loc": {
                      "start": {
                        "line": 383,
                        "column": 5
                      },
                      "end": {
                        "line": 383,
                        "column": 14
                      }
                    },
                    "name": "condition"
                  },
                  "arguments": [
                    {
                      "type": "ThisExpression",
                      "start": 12037,
                      "end": 12041,
                      "loc": {
                        "start": {
                          "line": 383,
                          "column": 15
                        },
                        "end": {
                          "line": 383,
                          "column": 19
                        }
                      }
                    }
                  ]
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 12052,
                  "end": 12064,
                  "loc": {
                    "start": {
                      "line": 384,
                      "column": 8
                    },
                    "end": {
                      "line": 384,
                      "column": 20
                    }
                  },
                  "argument": {
                    "type": "ThisExpression",
                    "start": 12059,
                    "end": 12063,
                    "loc": {
                      "start": {
                        "line": 384,
                        "column": 15
                      },
                      "end": {
                        "line": 384,
                        "column": 19
                      }
                    }
                  }
                },
                "alternate": null
              },
              {
                "type": "ForOfStatement",
                "start": 12066,
                "end": 12185,
                "loc": {
                  "start": {
                    "line": 385,
                    "column": 1
                  },
                  "end": {
                    "line": 389,
                    "column": 5
                  }
                },
                "left": {
                  "type": "VariableDeclaration",
                  "start": 12071,
                  "end": 12080,
                  "loc": {
                    "start": {
                      "line": 385,
                      "column": 6
                    },
                    "end": {
                      "line": 385,
                      "column": 15
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 12075,
                      "end": 12080,
                      "loc": {
                        "start": {
                          "line": 385,
                          "column": 10
                        },
                        "end": {
                          "line": 385,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 12075,
                        "end": 12080,
                        "loc": {
                          "start": {
                            "line": 385,
                            "column": 10
                          },
                          "end": {
                            "line": 385,
                            "column": 15
                          }
                        },
                        "name": "child"
                      },
                      "init": null
                    }
                  ],
                  "kind": "let"
                },
                "right": {
                  "type": "MemberExpression",
                  "start": 12084,
                  "end": 12097,
                  "loc": {
                    "start": {
                      "line": 385,
                      "column": 19
                    },
                    "end": {
                      "line": 385,
                      "column": 32
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 12084,
                    "end": 12088,
                    "loc": {
                      "start": {
                        "line": 385,
                        "column": 19
                      },
                      "end": {
                        "line": 385,
                        "column": 23
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 12089,
                    "end": 12097,
                    "loc": {
                      "start": {
                        "line": 385,
                        "column": 24
                      },
                      "end": {
                        "line": 385,
                        "column": 32
                      }
                    },
                    "name": "children"
                  },
                  "computed": false
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 12099,
                  "end": 12185,
                  "loc": {
                    "start": {
                      "line": 385,
                      "column": 34
                    },
                    "end": {
                      "line": 389,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 12109,
                      "end": 12142,
                      "loc": {
                        "start": {
                          "line": 386,
                          "column": 8
                        },
                        "end": {
                          "line": 386,
                          "column": 41
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12113,
                          "end": 12141,
                          "loc": {
                            "start": {
                              "line": 386,
                              "column": 12
                            },
                            "end": {
                              "line": 386,
                              "column": 40
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12113,
                            "end": 12117,
                            "loc": {
                              "start": {
                                "line": 386,
                                "column": 12
                              },
                              "end": {
                                "line": 386,
                                "column": 16
                              }
                            },
                            "name": "test"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 12120,
                            "end": 12141,
                            "loc": {
                              "start": {
                                "line": 386,
                                "column": 19
                              },
                              "end": {
                                "line": 386,
                                "column": 40
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12120,
                              "end": 12130,
                              "loc": {
                                "start": {
                                  "line": 386,
                                  "column": 19
                                },
                                "end": {
                                  "line": 386,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12120,
                                "end": 12125,
                                "loc": {
                                  "start": {
                                    "line": 386,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 386,
                                    "column": 24
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12126,
                                "end": 12130,
                                "loc": {
                                  "start": {
                                    "line": 386,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 386,
                                    "column": 29
                                  }
                                },
                                "name": "find"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 12131,
                                "end": 12140,
                                "loc": {
                                  "start": {
                                    "line": 386,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 386,
                                    "column": 39
                                  }
                                },
                                "name": "condition"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 12145,
                      "end": 12179,
                      "loc": {
                        "start": {
                          "line": 387,
                          "column": 2
                        },
                        "end": {
                          "line": 388,
                          "column": 24
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 12149,
                        "end": 12153,
                        "loc": {
                          "start": {
                            "line": 387,
                            "column": 6
                          },
                          "end": {
                            "line": 387,
                            "column": 10
                          }
                        },
                        "name": "test"
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 12167,
                        "end": 12179,
                        "loc": {
                          "start": {
                            "line": 388,
                            "column": 12
                          },
                          "end": {
                            "line": 388,
                            "column": 24
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 12174,
                          "end": 12178,
                          "loc": {
                            "start": {
                              "line": 388,
                              "column": 19
                            },
                            "end": {
                              "line": 388,
                              "column": 23
                            }
                          },
                          "name": "test"
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12189,
      "end": 12416,
      "loc": {
        "start": {
          "line": 392,
          "column": 0
        },
        "end": {
          "line": 399,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12189,
        "end": 12416,
        "loc": {
          "start": {
            "line": 392,
            "column": 0
          },
          "end": {
            "line": 399,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12189,
          "end": 12230,
          "loc": {
            "start": {
              "line": 392,
              "column": 0
            },
            "end": {
              "line": 392,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12189,
            "end": 12213,
            "loc": {
              "start": {
                "line": 392,
                "column": 0
              },
              "end": {
                "line": 392,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12189,
              "end": 12203,
              "loc": {
                "start": {
                  "line": 392,
                  "column": 0
                },
                "end": {
                  "line": 392,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12189,
                "end": 12194,
                "loc": {
                  "start": {
                    "line": 392,
                    "column": 0
                  },
                  "end": {
                    "line": 392,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12195,
                "end": 12203,
                "loc": {
                  "start": {
                    "line": 392,
                    "column": 6
                  },
                  "end": {
                    "line": 392,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12204,
              "end": 12213,
              "loc": {
                "start": {
                  "line": 392,
                  "column": 15
                },
                "end": {
                  "line": 392,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12214,
            "end": 12230,
            "loc": {
              "start": {
                "line": 392,
                "column": 25
              },
              "end": {
                "line": 392,
                "column": 41
              }
            },
            "name": "getObjectByMatch"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12233,
          "end": 12416,
          "loc": {
            "start": {
              "line": 392,
              "column": 44
            },
            "end": {
              "line": 399,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12214,
            "end": 12230,
            "loc": {
              "start": {
                "line": 392,
                "column": 25
              },
              "end": {
                "line": 392,
                "column": 41
              }
            },
            "name": "getObjectByMatch"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12242,
              "end": 12246,
              "loc": {
                "start": {
                  "line": 392,
                  "column": 53
                },
                "end": {
                  "line": 392,
                  "column": 57
                }
              },
              "name": "name"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 12248,
            "end": 12416,
            "loc": {
              "start": {
                "line": 392,
                "column": 59
              },
              "end": {
                "line": 399,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ForStatement",
                "start": 12251,
                "end": 12395,
                "loc": {
                  "start": {
                    "line": 393,
                    "column": 1
                  },
                  "end": {
                    "line": 397,
                    "column": 2
                  }
                },
                "init": {
                  "type": "VariableDeclaration",
                  "start": 12256,
                  "end": 12291,
                  "loc": {
                    "start": {
                      "line": 393,
                      "column": 6
                    },
                    "end": {
                      "line": 393,
                      "column": 41
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 12260,
                      "end": 12265,
                      "loc": {
                        "start": {
                          "line": 393,
                          "column": 10
                        },
                        "end": {
                          "line": 393,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 12260,
                        "end": 12261,
                        "loc": {
                          "start": {
                            "line": 393,
                            "column": 10
                          },
                          "end": {
                            "line": 393,
                            "column": 11
                          }
                        },
                        "name": "i"
                      },
                      "init": {
                        "type": "Literal",
                        "start": 12264,
                        "end": 12265,
                        "loc": {
                          "start": {
                            "line": 393,
                            "column": 14
                          },
                          "end": {
                            "line": 393,
                            "column": 15
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    },
                    {
                      "type": "VariableDeclarator",
                      "start": 12267,
                      "end": 12291,
                      "loc": {
                        "start": {
                          "line": 393,
                          "column": 17
                        },
                        "end": {
                          "line": 393,
                          "column": 41
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 12267,
                        "end": 12268,
                        "loc": {
                          "start": {
                            "line": 393,
                            "column": 17
                          },
                          "end": {
                            "line": 393,
                            "column": 18
                          }
                        },
                        "name": "l"
                      },
                      "init": {
                        "type": "MemberExpression",
                        "start": 12271,
                        "end": 12291,
                        "loc": {
                          "start": {
                            "line": 393,
                            "column": 21
                          },
                          "end": {
                            "line": 393,
                            "column": 41
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 12271,
                          "end": 12284,
                          "loc": {
                            "start": {
                              "line": 393,
                              "column": 21
                            },
                            "end": {
                              "line": 393,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12271,
                            "end": 12275,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 21
                              },
                              "end": {
                                "line": 393,
                                "column": 25
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12276,
                            "end": 12284,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 26
                              },
                              "end": {
                                "line": 393,
                                "column": 34
                              }
                            },
                            "name": "children"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12285,
                          "end": 12291,
                          "loc": {
                            "start": {
                              "line": 393,
                              "column": 35
                            },
                            "end": {
                              "line": 393,
                              "column": 41
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "kind": "var"
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 12293,
                  "end": 12298,
                  "loc": {
                    "start": {
                      "line": 393,
                      "column": 43
                    },
                    "end": {
                      "line": 393,
                      "column": 48
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 12293,
                    "end": 12294,
                    "loc": {
                      "start": {
                        "line": 393,
                        "column": 43
                      },
                      "end": {
                        "line": 393,
                        "column": 44
                      }
                    },
                    "name": "i"
                  },
                  "operator": "<",
                  "right": {
                    "type": "Identifier",
                    "start": 12297,
                    "end": 12298,
                    "loc": {
                      "start": {
                        "line": 393,
                        "column": 47
                      },
                      "end": {
                        "line": 393,
                        "column": 48
                      }
                    },
                    "name": "l"
                  }
                },
                "update": {
                  "type": "UpdateExpression",
                  "start": 12300,
                  "end": 12303,
                  "loc": {
                    "start": {
                      "line": 393,
                      "column": 50
                    },
                    "end": {
                      "line": 393,
                      "column": 53
                    }
                  },
                  "operator": "++",
                  "prefix": false,
                  "argument": {
                    "type": "Identifier",
                    "start": 12300,
                    "end": 12301,
                    "loc": {
                      "start": {
                        "line": 393,
                        "column": 50
                      },
                      "end": {
                        "line": 393,
                        "column": 51
                      }
                    },
                    "name": "i"
                  }
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 12305,
                  "end": 12395,
                  "loc": {
                    "start": {
                      "line": 393,
                      "column": 55
                    },
                    "end": {
                      "line": 397,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 12309,
                      "end": 12338,
                      "loc": {
                        "start": {
                          "line": 394,
                          "column": 2
                        },
                        "end": {
                          "line": 394,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12313,
                          "end": 12337,
                          "loc": {
                            "start": {
                              "line": 394,
                              "column": 6
                            },
                            "end": {
                              "line": 394,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12313,
                            "end": 12318,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 6
                              },
                              "end": {
                                "line": 394,
                                "column": 11
                              }
                            },
                            "name": "child"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 12321,
                            "end": 12337,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 14
                              },
                              "end": {
                                "line": 394,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12321,
                              "end": 12334,
                              "loc": {
                                "start": {
                                  "line": 394,
                                  "column": 14
                                },
                                "end": {
                                  "line": 394,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12321,
                                "end": 12325,
                                "loc": {
                                  "start": {
                                    "line": 394,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 394,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12326,
                                "end": 12334,
                                "loc": {
                                  "start": {
                                    "line": 394,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 394,
                                    "column": 27
                                  }
                                },
                                "name": "children"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12335,
                              "end": 12336,
                              "loc": {
                                "start": {
                                  "line": 394,
                                  "column": 28
                                },
                                "end": {
                                  "line": 394,
                                  "column": 29
                                }
                              },
                              "name": "i"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 12341,
                      "end": 12392,
                      "loc": {
                        "start": {
                          "line": 395,
                          "column": 2
                        },
                        "end": {
                          "line": 396,
                          "column": 16
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 12345,
                        "end": 12374,
                        "loc": {
                          "start": {
                            "line": 395,
                            "column": 6
                          },
                          "end": {
                            "line": 395,
                            "column": 35
                          }
                        },
                        "left": {
                          "type": "CallExpression",
                          "start": 12345,
                          "end": 12369,
                          "loc": {
                            "start": {
                              "line": 395,
                              "column": 6
                            },
                            "end": {
                              "line": 395,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 12345,
                            "end": 12363,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 6
                              },
                              "end": {
                                "line": 395,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12345,
                              "end": 12355,
                              "loc": {
                                "start": {
                                  "line": 395,
                                  "column": 6
                                },
                                "end": {
                                  "line": 395,
                                  "column": 16
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12345,
                                "end": 12350,
                                "loc": {
                                  "start": {
                                    "line": 395,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 395,
                                    "column": 11
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12351,
                                "end": 12355,
                                "loc": {
                                  "start": {
                                    "line": 395,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 395,
                                    "column": 16
                                  }
                                },
                                "name": "name"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12356,
                              "end": 12363,
                              "loc": {
                                "start": {
                                  "line": 395,
                                  "column": 17
                                },
                                "end": {
                                  "line": 395,
                                  "column": 24
                                }
                              },
                              "name": "indexOf"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 12364,
                              "end": 12368,
                              "loc": {
                                "start": {
                                  "line": 395,
                                  "column": 25
                                },
                                "end": {
                                  "line": 395,
                                  "column": 29
                                }
                              },
                              "name": "name"
                            }
                          ]
                        },
                        "operator": ">",
                        "right": {
                          "type": "UnaryExpression",
                          "start": 12372,
                          "end": 12374,
                          "loc": {
                            "start": {
                              "line": 395,
                              "column": 33
                            },
                            "end": {
                              "line": 395,
                              "column": 35
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 12373,
                            "end": 12374,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 34
                              },
                              "end": {
                                "line": 395,
                                "column": 35
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 12379,
                        "end": 12392,
                        "loc": {
                          "start": {
                            "line": 396,
                            "column": 3
                          },
                          "end": {
                            "line": 396,
                            "column": 16
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 12386,
                          "end": 12391,
                          "loc": {
                            "start": {
                              "line": 396,
                              "column": 10
                            },
                            "end": {
                              "line": 396,
                              "column": 15
                            }
                          },
                          "name": "child"
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 12397,
                "end": 12414,
                "loc": {
                  "start": {
                    "line": 398,
                    "column": 1
                  },
                  "end": {
                    "line": 398,
                    "column": 18
                  }
                },
                "argument": {
                  "type": "Identifier",
                  "start": 12404,
                  "end": 12413,
                  "loc": {
                    "start": {
                      "line": 398,
                      "column": 8
                    },
                    "end": {
                      "line": 398,
                      "column": 17
                    }
                  },
                  "name": "undefined"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12418,
      "end": 12748,
      "loc": {
        "start": {
          "line": 401,
          "column": 0
        },
        "end": {
          "line": 411,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12418,
        "end": 12748,
        "loc": {
          "start": {
            "line": 401,
            "column": 0
          },
          "end": {
            "line": 411,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12418,
          "end": 12460,
          "loc": {
            "start": {
              "line": 401,
              "column": 0
            },
            "end": {
              "line": 401,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12418,
            "end": 12442,
            "loc": {
              "start": {
                "line": 401,
                "column": 0
              },
              "end": {
                "line": 401,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12418,
              "end": 12432,
              "loc": {
                "start": {
                  "line": 401,
                  "column": 0
                },
                "end": {
                  "line": 401,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12418,
                "end": 12423,
                "loc": {
                  "start": {
                    "line": 401,
                    "column": 0
                  },
                  "end": {
                    "line": 401,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12424,
                "end": 12432,
                "loc": {
                  "start": {
                    "line": 401,
                    "column": 6
                  },
                  "end": {
                    "line": 401,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12433,
              "end": 12442,
              "loc": {
                "start": {
                  "line": 401,
                  "column": 15
                },
                "end": {
                  "line": 401,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12443,
            "end": 12460,
            "loc": {
              "start": {
                "line": 401,
                "column": 25
              },
              "end": {
                "line": 401,
                "column": 42
              }
            },
            "name": "getObjectByUserId"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12463,
          "end": 12748,
          "loc": {
            "start": {
              "line": 401,
              "column": 45
            },
            "end": {
              "line": 411,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12443,
            "end": 12460,
            "loc": {
              "start": {
                "line": 401,
                "column": 25
              },
              "end": {
                "line": 401,
                "column": 42
              }
            },
            "name": "getObjectByUserId"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12472,
              "end": 12474,
              "loc": {
                "start": {
                  "line": 401,
                  "column": 54
                },
                "end": {
                  "line": 401,
                  "column": 56
                }
              },
              "name": "id"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 12476,
            "end": 12748,
            "loc": {
              "start": {
                "line": 401,
                "column": 58
              },
              "end": {
                "line": 411,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 12479,
                "end": 12539,
                "loc": {
                  "start": {
                    "line": 402,
                    "column": 1
                  },
                  "end": {
                    "line": 402,
                    "column": 61
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 12483,
                  "end": 12525,
                  "loc": {
                    "start": {
                      "line": 402,
                      "column": 5
                    },
                    "end": {
                      "line": 402,
                      "column": 47
                    }
                  },
                  "left": {
                    "type": "UnaryExpression",
                    "start": 12483,
                    "end": 12498,
                    "loc": {
                      "start": {
                        "line": 402,
                        "column": 5
                      },
                      "end": {
                        "line": 402,
                        "column": 20
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 12484,
                      "end": 12498,
                      "loc": {
                        "start": {
                          "line": 402,
                          "column": 6
                        },
                        "end": {
                          "line": 402,
                          "column": 20
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 12485,
                        "end": 12498,
                        "loc": {
                          "start": {
                            "line": 402,
                            "column": 7
                          },
                          "end": {
                            "line": 402,
                            "column": 20
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 12485,
                          "end": 12489,
                          "loc": {
                            "start": {
                              "line": 402,
                              "column": 7
                            },
                            "end": {
                              "line": 402,
                              "column": 11
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12490,
                          "end": 12498,
                          "loc": {
                            "start": {
                              "line": 402,
                              "column": 12
                            },
                            "end": {
                              "line": 402,
                              "column": 20
                            }
                          },
                          "name": "userData"
                        },
                        "computed": false
                      }
                    }
                  },
                  "operator": "&&",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 12502,
                    "end": 12525,
                    "loc": {
                      "start": {
                        "line": 402,
                        "column": 24
                      },
                      "end": {
                        "line": 402,
                        "column": 47
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 12502,
                      "end": 12518,
                      "loc": {
                        "start": {
                          "line": 402,
                          "column": 24
                        },
                        "end": {
                          "line": 402,
                          "column": 40
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 12502,
                        "end": 12515,
                        "loc": {
                          "start": {
                            "line": 402,
                            "column": 24
                          },
                          "end": {
                            "line": 402,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 12502,
                          "end": 12506,
                          "loc": {
                            "start": {
                              "line": 402,
                              "column": 24
                            },
                            "end": {
                              "line": 402,
                              "column": 28
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12507,
                          "end": 12515,
                          "loc": {
                            "start": {
                              "line": 402,
                              "column": 29
                            },
                            "end": {
                              "line": 402,
                              "column": 37
                            }
                          },
                          "name": "userData"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12516,
                        "end": 12518,
                        "loc": {
                          "start": {
                            "line": 402,
                            "column": 38
                          },
                          "end": {
                            "line": 402,
                            "column": 40
                          }
                        },
                        "name": "id"
                      },
                      "computed": false
                    },
                    "operator": "===",
                    "right": {
                      "type": "Identifier",
                      "start": 12523,
                      "end": 12525,
                      "loc": {
                        "start": {
                          "line": 402,
                          "column": 45
                        },
                        "end": {
                          "line": 402,
                          "column": 47
                        }
                      },
                      "name": "id"
                    }
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 12527,
                  "end": 12539,
                  "loc": {
                    "start": {
                      "line": 402,
                      "column": 49
                    },
                    "end": {
                      "line": 402,
                      "column": 61
                    }
                  },
                  "argument": {
                    "type": "ThisExpression",
                    "start": 12534,
                    "end": 12538,
                    "loc": {
                      "start": {
                        "line": 402,
                        "column": 56
                      },
                      "end": {
                        "line": 402,
                        "column": 60
                      }
                    }
                  }
                },
                "alternate": null
              },
              {
                "type": "ForStatement",
                "start": 12541,
                "end": 12727,
                "loc": {
                  "start": {
                    "line": 403,
                    "column": 1
                  },
                  "end": {
                    "line": 409,
                    "column": 2
                  }
                },
                "init": {
                  "type": "VariableDeclaration",
                  "start": 12546,
                  "end": 12581,
                  "loc": {
                    "start": {
                      "line": 403,
                      "column": 6
                    },
                    "end": {
                      "line": 403,
                      "column": 41
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 12550,
                      "end": 12555,
                      "loc": {
                        "start": {
                          "line": 403,
                          "column": 10
                        },
                        "end": {
                          "line": 403,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 12550,
                        "end": 12551,
                        "loc": {
                          "start": {
                            "line": 403,
                            "column": 10
                          },
                          "end": {
                            "line": 403,
                            "column": 11
                          }
                        },
                        "name": "i"
                      },
                      "init": {
                        "type": "Literal",
                        "start": 12554,
                        "end": 12555,
                        "loc": {
                          "start": {
                            "line": 403,
                            "column": 14
                          },
                          "end": {
                            "line": 403,
                            "column": 15
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    },
                    {
                      "type": "VariableDeclarator",
                      "start": 12557,
                      "end": 12581,
                      "loc": {
                        "start": {
                          "line": 403,
                          "column": 17
                        },
                        "end": {
                          "line": 403,
                          "column": 41
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 12557,
                        "end": 12558,
                        "loc": {
                          "start": {
                            "line": 403,
                            "column": 17
                          },
                          "end": {
                            "line": 403,
                            "column": 18
                          }
                        },
                        "name": "l"
                      },
                      "init": {
                        "type": "MemberExpression",
                        "start": 12561,
                        "end": 12581,
                        "loc": {
                          "start": {
                            "line": 403,
                            "column": 21
                          },
                          "end": {
                            "line": 403,
                            "column": 41
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 12561,
                          "end": 12574,
                          "loc": {
                            "start": {
                              "line": 403,
                              "column": 21
                            },
                            "end": {
                              "line": 403,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12561,
                            "end": 12565,
                            "loc": {
                              "start": {
                                "line": 403,
                                "column": 21
                              },
                              "end": {
                                "line": 403,
                                "column": 25
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12566,
                            "end": 12574,
                            "loc": {
                              "start": {
                                "line": 403,
                                "column": 26
                              },
                              "end": {
                                "line": 403,
                                "column": 34
                              }
                            },
                            "name": "children"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12575,
                          "end": 12581,
                          "loc": {
                            "start": {
                              "line": 403,
                              "column": 35
                            },
                            "end": {
                              "line": 403,
                              "column": 41
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "kind": "var"
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 12583,
                  "end": 12588,
                  "loc": {
                    "start": {
                      "line": 403,
                      "column": 43
                    },
                    "end": {
                      "line": 403,
                      "column": 48
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 12583,
                    "end": 12584,
                    "loc": {
                      "start": {
                        "line": 403,
                        "column": 43
                      },
                      "end": {
                        "line": 403,
                        "column": 44
                      }
                    },
                    "name": "i"
                  },
                  "operator": "<",
                  "right": {
                    "type": "Identifier",
                    "start": 12587,
                    "end": 12588,
                    "loc": {
                      "start": {
                        "line": 403,
                        "column": 47
                      },
                      "end": {
                        "line": 403,
                        "column": 48
                      }
                    },
                    "name": "l"
                  }
                },
                "update": {
                  "type": "UpdateExpression",
                  "start": 12590,
                  "end": 12593,
                  "loc": {
                    "start": {
                      "line": 403,
                      "column": 50
                    },
                    "end": {
                      "line": 403,
                      "column": 53
                    }
                  },
                  "operator": "++",
                  "prefix": false,
                  "argument": {
                    "type": "Identifier",
                    "start": 12590,
                    "end": 12591,
                    "loc": {
                      "start": {
                        "line": 403,
                        "column": 50
                      },
                      "end": {
                        "line": 403,
                        "column": 51
                      }
                    },
                    "name": "i"
                  }
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 12595,
                  "end": 12727,
                  "loc": {
                    "start": {
                      "line": 403,
                      "column": 55
                    },
                    "end": {
                      "line": 409,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 12599,
                      "end": 12628,
                      "loc": {
                        "start": {
                          "line": 404,
                          "column": 2
                        },
                        "end": {
                          "line": 404,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12603,
                          "end": 12627,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 6
                            },
                            "end": {
                              "line": 404,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12603,
                            "end": 12608,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 6
                              },
                              "end": {
                                "line": 404,
                                "column": 11
                              }
                            },
                            "name": "child"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 12611,
                            "end": 12627,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 14
                              },
                              "end": {
                                "line": 404,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12611,
                              "end": 12624,
                              "loc": {
                                "start": {
                                  "line": 404,
                                  "column": 14
                                },
                                "end": {
                                  "line": 404,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12611,
                                "end": 12615,
                                "loc": {
                                  "start": {
                                    "line": 404,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 404,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12616,
                                "end": 12624,
                                "loc": {
                                  "start": {
                                    "line": 404,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 404,
                                    "column": 27
                                  }
                                },
                                "name": "children"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12625,
                              "end": 12626,
                              "loc": {
                                "start": {
                                  "line": 404,
                                  "column": 28
                                },
                                "end": {
                                  "line": 404,
                                  "column": 29
                                }
                              },
                              "name": "i"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12631,
                      "end": 12672,
                      "loc": {
                        "start": {
                          "line": 405,
                          "column": 2
                        },
                        "end": {
                          "line": 405,
                          "column": 43
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12635,
                          "end": 12671,
                          "loc": {
                            "start": {
                              "line": 405,
                              "column": 6
                            },
                            "end": {
                              "line": 405,
                              "column": 42
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12635,
                            "end": 12641,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 6
                              },
                              "end": {
                                "line": 405,
                                "column": 12
                              }
                            },
                            "name": "object"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 12644,
                            "end": 12671,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 15
                              },
                              "end": {
                                "line": 405,
                                "column": 42
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12644,
                              "end": 12667,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 15
                                },
                                "end": {
                                  "line": 405,
                                  "column": 38
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12644,
                                "end": 12649,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 20
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12650,
                                "end": 12667,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 38
                                  }
                                },
                                "name": "getObjectByUserId"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 12668,
                                "end": 12670,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 41
                                  }
                                },
                                "name": "id"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 12675,
                      "end": 12724,
                      "loc": {
                        "start": {
                          "line": 406,
                          "column": 2
                        },
                        "end": {
                          "line": 408,
                          "column": 3
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 12679,
                        "end": 12699,
                        "loc": {
                          "start": {
                            "line": 406,
                            "column": 6
                          },
                          "end": {
                            "line": 406,
                            "column": 26
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 12679,
                          "end": 12685,
                          "loc": {
                            "start": {
                              "line": 406,
                              "column": 6
                            },
                            "end": {
                              "line": 406,
                              "column": 12
                            }
                          },
                          "name": "object"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "Identifier",
                          "start": 12690,
                          "end": 12699,
                          "loc": {
                            "start": {
                              "line": 406,
                              "column": 17
                            },
                            "end": {
                              "line": 406,
                              "column": 26
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 12701,
                        "end": 12724,
                        "loc": {
                          "start": {
                            "line": 406,
                            "column": 28
                          },
                          "end": {
                            "line": 408,
                            "column": 3
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 12706,
                            "end": 12720,
                            "loc": {
                              "start": {
                                "line": 407,
                                "column": 3
                              },
                              "end": {
                                "line": 407,
                                "column": 17
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 12713,
                              "end": 12719,
                              "loc": {
                                "start": {
                                  "line": 407,
                                  "column": 10
                                },
                                "end": {
                                  "line": 407,
                                  "column": 16
                                }
                              },
                              "name": "object"
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 12729,
                "end": 12746,
                "loc": {
                  "start": {
                    "line": 410,
                    "column": 1
                  },
                  "end": {
                    "line": 410,
                    "column": 18
                  }
                },
                "argument": {
                  "type": "Identifier",
                  "start": 12736,
                  "end": 12745,
                  "loc": {
                    "start": {
                      "line": 410,
                      "column": 8
                    },
                    "end": {
                      "line": 410,
                      "column": 17
                    }
                  },
                  "name": "undefined"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12750,
      "end": 12885,
      "loc": {
        "start": {
          "line": 413,
          "column": 0
        },
        "end": {
          "line": 415,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12750,
        "end": 12885,
        "loc": {
          "start": {
            "line": 413,
            "column": 0
          },
          "end": {
            "line": 415,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12750,
          "end": 12784,
          "loc": {
            "start": {
              "line": 413,
              "column": 0
            },
            "end": {
              "line": 413,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12750,
            "end": 12774,
            "loc": {
              "start": {
                "line": 413,
                "column": 0
              },
              "end": {
                "line": 413,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12750,
              "end": 12764,
              "loc": {
                "start": {
                  "line": 413,
                  "column": 0
                },
                "end": {
                  "line": 413,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12750,
                "end": 12755,
                "loc": {
                  "start": {
                    "line": 413,
                    "column": 0
                  },
                  "end": {
                    "line": 413,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12756,
                "end": 12764,
                "loc": {
                  "start": {
                    "line": 413,
                    "column": 6
                  },
                  "end": {
                    "line": 413,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12765,
              "end": 12774,
              "loc": {
                "start": {
                  "line": 413,
                  "column": 15
                },
                "end": {
                  "line": 413,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12775,
            "end": 12784,
            "loc": {
              "start": {
                "line": 413,
                "column": 25
              },
              "end": {
                "line": 413,
                "column": 34
              }
            },
            "name": "lastChild"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12787,
          "end": 12885,
          "loc": {
            "start": {
              "line": 413,
              "column": 37
            },
            "end": {
              "line": 415,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12775,
            "end": 12784,
            "loc": {
              "start": {
                "line": 413,
                "column": 25
              },
              "end": {
                "line": 413,
                "column": 34
              }
            },
            "name": "lastChild"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 12798,
            "end": 12885,
            "loc": {
              "start": {
                "line": 413,
                "column": 48
              },
              "end": {
                "line": 415,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 12801,
                "end": 12883,
                "loc": {
                  "start": {
                    "line": 414,
                    "column": 1
                  },
                  "end": {
                    "line": 414,
                    "column": 83
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 12808,
                  "end": 12882,
                  "loc": {
                    "start": {
                      "line": 414,
                      "column": 8
                    },
                    "end": {
                      "line": 414,
                      "column": 82
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 12808,
                    "end": 12828,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 8
                      },
                      "end": {
                        "line": 414,
                        "column": 28
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 12808,
                      "end": 12821,
                      "loc": {
                        "start": {
                          "line": 414,
                          "column": 8
                        },
                        "end": {
                          "line": 414,
                          "column": 21
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 12808,
                        "end": 12812,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 8
                          },
                          "end": {
                            "line": 414,
                            "column": 12
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12813,
                        "end": 12821,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 13
                          },
                          "end": {
                            "line": 414,
                            "column": 21
                          }
                        },
                        "name": "children"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 12822,
                      "end": 12828,
                      "loc": {
                        "start": {
                          "line": 414,
                          "column": 22
                        },
                        "end": {
                          "line": 414,
                          "column": 28
                        }
                      },
                      "name": "length"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "MemberExpression",
                    "start": 12831,
                    "end": 12870,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 31
                      },
                      "end": {
                        "line": 414,
                        "column": 70
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 12831,
                      "end": 12844,
                      "loc": {
                        "start": {
                          "line": 414,
                          "column": 31
                        },
                        "end": {
                          "line": 414,
                          "column": 44
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 12831,
                        "end": 12835,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 31
                          },
                          "end": {
                            "line": 414,
                            "column": 35
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12836,
                        "end": 12844,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 36
                          },
                          "end": {
                            "line": 414,
                            "column": 44
                          }
                        },
                        "name": "children"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "BinaryExpression",
                      "start": 12845,
                      "end": 12869,
                      "loc": {
                        "start": {
                          "line": 414,
                          "column": 45
                        },
                        "end": {
                          "line": 414,
                          "column": 69
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 12845,
                        "end": 12865,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 45
                          },
                          "end": {
                            "line": 414,
                            "column": 65
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 12845,
                          "end": 12858,
                          "loc": {
                            "start": {
                              "line": 414,
                              "column": 45
                            },
                            "end": {
                              "line": 414,
                              "column": 58
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12845,
                            "end": 12849,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 45
                              },
                              "end": {
                                "line": 414,
                                "column": 49
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12850,
                            "end": 12858,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 50
                              },
                              "end": {
                                "line": 414,
                                "column": 58
                              }
                            },
                            "name": "children"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12859,
                          "end": 12865,
                          "loc": {
                            "start": {
                              "line": 414,
                              "column": 59
                            },
                            "end": {
                              "line": 414,
                              "column": 65
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": "-",
                      "right": {
                        "type": "Literal",
                        "start": 12868,
                        "end": 12869,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 68
                          },
                          "end": {
                            "line": 414,
                            "column": 69
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "computed": true
                  },
                  "alternate": {
                    "type": "Identifier",
                    "start": 12873,
                    "end": 12882,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 73
                      },
                      "end": {
                        "line": 414,
                        "column": 82
                      }
                    },
                    "name": "undefined"
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12887,
      "end": 13064,
      "loc": {
        "start": {
          "line": 417,
          "column": 0
        },
        "end": {
          "line": 421,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12887,
        "end": 13064,
        "loc": {
          "start": {
            "line": 417,
            "column": 0
          },
          "end": {
            "line": 421,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12887,
          "end": 12923,
          "loc": {
            "start": {
              "line": 417,
              "column": 0
            },
            "end": {
              "line": 417,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12887,
            "end": 12911,
            "loc": {
              "start": {
                "line": 417,
                "column": 0
              },
              "end": {
                "line": 417,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12887,
              "end": 12901,
              "loc": {
                "start": {
                  "line": 417,
                  "column": 0
                },
                "end": {
                  "line": 417,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12887,
                "end": 12892,
                "loc": {
                  "start": {
                    "line": 417,
                    "column": 0
                  },
                  "end": {
                    "line": 417,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12893,
                "end": 12901,
                "loc": {
                  "start": {
                    "line": 417,
                    "column": 6
                  },
                  "end": {
                    "line": 417,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12902,
              "end": 12911,
              "loc": {
                "start": {
                  "line": 417,
                  "column": 15
                },
                "end": {
                  "line": 417,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12912,
            "end": 12923,
            "loc": {
              "start": {
                "line": 417,
                "column": 25
              },
              "end": {
                "line": 417,
                "column": 36
              }
            },
            "name": "setPosition"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12926,
          "end": 13064,
          "loc": {
            "start": {
              "line": 417,
              "column": 39
            },
            "end": {
              "line": 421,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12912,
            "end": 12923,
            "loc": {
              "start": {
                "line": 417,
                "column": 25
              },
              "end": {
                "line": 417,
                "column": 36
              }
            },
            "name": "setPosition"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12935,
              "end": 12941,
              "loc": {
                "start": {
                  "line": 417,
                  "column": 48
                },
                "end": {
                  "line": 417,
                  "column": 54
                }
              },
              "name": "vector"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 12943,
            "end": 13064,
            "loc": {
              "start": {
                "line": 417,
                "column": 56
              },
              "end": {
                "line": 421,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 12946,
                "end": 13019,
                "loc": {
                  "start": {
                    "line": 418,
                    "column": 1
                  },
                  "end": {
                    "line": 418,
                    "column": 74
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 12946,
                  "end": 13018,
                  "loc": {
                    "start": {
                      "line": 418,
                      "column": 1
                    },
                    "end": {
                      "line": 418,
                      "column": 73
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 12946,
                    "end": 12952,
                    "loc": {
                      "start": {
                        "line": 418,
                        "column": 1
                      },
                      "end": {
                        "line": 418,
                        "column": 7
                      }
                    },
                    "name": "vector"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 12955,
                    "end": 13018,
                    "loc": {
                      "start": {
                        "line": 418,
                        "column": 10
                      },
                      "end": {
                        "line": 418,
                        "column": 73
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 12955,
                      "end": 12975,
                      "loc": {
                        "start": {
                          "line": 418,
                          "column": 10
                        },
                        "end": {
                          "line": 418,
                          "column": 30
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 12955,
                        "end": 12971,
                        "loc": {
                          "start": {
                            "line": 418,
                            "column": 10
                          },
                          "end": {
                            "line": 418,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 12955,
                          "end": 12964,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 10
                            },
                            "end": {
                              "line": 418,
                              "column": 19
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12965,
                          "end": 12971,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 20
                            },
                            "end": {
                              "line": 418,
                              "column": 26
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 12974,
                        "end": 12975,
                        "loc": {
                          "start": {
                            "line": 418,
                            "column": 29
                          },
                          "end": {
                            "line": 418,
                            "column": 30
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "NewExpression",
                      "start": 12978,
                      "end": 13009,
                      "loc": {
                        "start": {
                          "line": 418,
                          "column": 33
                        },
                        "end": {
                          "line": 418,
                          "column": 64
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 12982,
                        "end": 12995,
                        "loc": {
                          "start": {
                            "line": 418,
                            "column": 37
                          },
                          "end": {
                            "line": 418,
                            "column": 50
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 12982,
                          "end": 12987,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 37
                            },
                            "end": {
                              "line": 418,
                              "column": 42
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12988,
                          "end": 12995,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 43
                            },
                            "end": {
                              "line": 418,
                              "column": 50
                            }
                          },
                          "name": "Vector3"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "SpreadElement",
                          "start": 12996,
                          "end": 13008,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 51
                            },
                            "end": {
                              "line": 418,
                              "column": 63
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 12999,
                            "end": 13008,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 54
                              },
                              "end": {
                                "line": 418,
                                "column": 63
                              }
                            },
                            "name": "arguments"
                          }
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 13012,
                      "end": 13018,
                      "loc": {
                        "start": {
                          "line": 418,
                          "column": 67
                        },
                        "end": {
                          "line": 418,
                          "column": 73
                        }
                      },
                      "name": "vector"
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13021,
                "end": 13048,
                "loc": {
                  "start": {
                    "line": 419,
                    "column": 1
                  },
                  "end": {
                    "line": 419,
                    "column": 28
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 13021,
                  "end": 13047,
                  "loc": {
                    "start": {
                      "line": 419,
                      "column": 1
                    },
                    "end": {
                      "line": 419,
                      "column": 27
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13021,
                    "end": 13039,
                    "loc": {
                      "start": {
                        "line": 419,
                        "column": 1
                      },
                      "end": {
                        "line": 419,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13021,
                      "end": 13034,
                      "loc": {
                        "start": {
                          "line": 419,
                          "column": 1
                        },
                        "end": {
                          "line": 419,
                          "column": 14
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13021,
                        "end": 13025,
                        "loc": {
                          "start": {
                            "line": 419,
                            "column": 1
                          },
                          "end": {
                            "line": 419,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13026,
                        "end": 13034,
                        "loc": {
                          "start": {
                            "line": 419,
                            "column": 6
                          },
                          "end": {
                            "line": 419,
                            "column": 14
                          }
                        },
                        "name": "position"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13035,
                      "end": 13039,
                      "loc": {
                        "start": {
                          "line": 419,
                          "column": 15
                        },
                        "end": {
                          "line": 419,
                          "column": 19
                        }
                      },
                      "name": "copy"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 13040,
                      "end": 13046,
                      "loc": {
                        "start": {
                          "line": 419,
                          "column": 20
                        },
                        "end": {
                          "line": 419,
                          "column": 26
                        }
                      },
                      "name": "vector"
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 13050,
                "end": 13062,
                "loc": {
                  "start": {
                    "line": 420,
                    "column": 1
                  },
                  "end": {
                    "line": 420,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 13057,
                  "end": 13061,
                  "loc": {
                    "start": {
                      "line": 420,
                      "column": 8
                    },
                    "end": {
                      "line": 420,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13066,
      "end": 13241,
      "loc": {
        "start": {
          "line": 423,
          "column": 0
        },
        "end": {
          "line": 427,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13066,
        "end": 13241,
        "loc": {
          "start": {
            "line": 423,
            "column": 0
          },
          "end": {
            "line": 427,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13066,
          "end": 13102,
          "loc": {
            "start": {
              "line": 423,
              "column": 0
            },
            "end": {
              "line": 423,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13066,
            "end": 13090,
            "loc": {
              "start": {
                "line": 423,
                "column": 0
              },
              "end": {
                "line": 423,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13066,
              "end": 13080,
              "loc": {
                "start": {
                  "line": 423,
                  "column": 0
                },
                "end": {
                  "line": 423,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13066,
                "end": 13071,
                "loc": {
                  "start": {
                    "line": 423,
                    "column": 0
                  },
                  "end": {
                    "line": 423,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13072,
                "end": 13080,
                "loc": {
                  "start": {
                    "line": 423,
                    "column": 6
                  },
                  "end": {
                    "line": 423,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13081,
              "end": 13090,
              "loc": {
                "start": {
                  "line": 423,
                  "column": 15
                },
                "end": {
                  "line": 423,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13091,
            "end": 13102,
            "loc": {
              "start": {
                "line": 423,
                "column": 25
              },
              "end": {
                "line": 423,
                "column": 36
              }
            },
            "name": "setRotation"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13105,
          "end": 13241,
          "loc": {
            "start": {
              "line": 423,
              "column": 39
            },
            "end": {
              "line": 427,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13091,
            "end": 13102,
            "loc": {
              "start": {
                "line": 423,
                "column": 25
              },
              "end": {
                "line": 423,
                "column": 36
              }
            },
            "name": "setRotation"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 13114,
              "end": 13120,
              "loc": {
                "start": {
                  "line": 423,
                  "column": 48
                },
                "end": {
                  "line": 423,
                  "column": 54
                }
              },
              "name": "vector"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13122,
            "end": 13241,
            "loc": {
              "start": {
                "line": 423,
                "column": 56
              },
              "end": {
                "line": 427,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 13125,
                "end": 13196,
                "loc": {
                  "start": {
                    "line": 424,
                    "column": 1
                  },
                  "end": {
                    "line": 424,
                    "column": 72
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13125,
                  "end": 13195,
                  "loc": {
                    "start": {
                      "line": 424,
                      "column": 1
                    },
                    "end": {
                      "line": 424,
                      "column": 71
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 13125,
                    "end": 13131,
                    "loc": {
                      "start": {
                        "line": 424,
                        "column": 1
                      },
                      "end": {
                        "line": 424,
                        "column": 7
                      }
                    },
                    "name": "vector"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 13134,
                    "end": 13195,
                    "loc": {
                      "start": {
                        "line": 424,
                        "column": 10
                      },
                      "end": {
                        "line": 424,
                        "column": 71
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 13134,
                      "end": 13154,
                      "loc": {
                        "start": {
                          "line": 424,
                          "column": 10
                        },
                        "end": {
                          "line": 424,
                          "column": 30
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 13134,
                        "end": 13150,
                        "loc": {
                          "start": {
                            "line": 424,
                            "column": 10
                          },
                          "end": {
                            "line": 424,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13134,
                          "end": 13143,
                          "loc": {
                            "start": {
                              "line": 424,
                              "column": 10
                            },
                            "end": {
                              "line": 424,
                              "column": 19
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13144,
                          "end": 13150,
                          "loc": {
                            "start": {
                              "line": 424,
                              "column": 20
                            },
                            "end": {
                              "line": 424,
                              "column": 26
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 13153,
                        "end": 13154,
                        "loc": {
                          "start": {
                            "line": 424,
                            "column": 29
                          },
                          "end": {
                            "line": 424,
                            "column": 30
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "NewExpression",
                      "start": 13157,
                      "end": 13186,
                      "loc": {
                        "start": {
                          "line": 424,
                          "column": 33
                        },
                        "end": {
                          "line": 424,
                          "column": 62
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13161,
                        "end": 13172,
                        "loc": {
                          "start": {
                            "line": 424,
                            "column": 37
                          },
                          "end": {
                            "line": 424,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13161,
                          "end": 13166,
                          "loc": {
                            "start": {
                              "line": 424,
                              "column": 37
                            },
                            "end": {
                              "line": 424,
                              "column": 42
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13167,
                          "end": 13172,
                          "loc": {
                            "start": {
                              "line": 424,
                              "column": 43
                            },
                            "end": {
                              "line": 424,
                              "column": 48
                            }
                          },
                          "name": "Euler"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "SpreadElement",
                          "start": 13173,
                          "end": 13185,
                          "loc": {
                            "start": {
                              "line": 424,
                              "column": 49
                            },
                            "end": {
                              "line": 424,
                              "column": 61
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 13176,
                            "end": 13185,
                            "loc": {
                              "start": {
                                "line": 424,
                                "column": 52
                              },
                              "end": {
                                "line": 424,
                                "column": 61
                              }
                            },
                            "name": "arguments"
                          }
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 13189,
                      "end": 13195,
                      "loc": {
                        "start": {
                          "line": 424,
                          "column": 65
                        },
                        "end": {
                          "line": 424,
                          "column": 71
                        }
                      },
                      "name": "vector"
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13198,
                "end": 13225,
                "loc": {
                  "start": {
                    "line": 425,
                    "column": 1
                  },
                  "end": {
                    "line": 425,
                    "column": 28
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 13198,
                  "end": 13224,
                  "loc": {
                    "start": {
                      "line": 425,
                      "column": 1
                    },
                    "end": {
                      "line": 425,
                      "column": 27
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13198,
                    "end": 13216,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 1
                      },
                      "end": {
                        "line": 425,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13198,
                      "end": 13211,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 1
                        },
                        "end": {
                          "line": 425,
                          "column": 14
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13198,
                        "end": 13202,
                        "loc": {
                          "start": {
                            "line": 425,
                            "column": 1
                          },
                          "end": {
                            "line": 425,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13203,
                        "end": 13211,
                        "loc": {
                          "start": {
                            "line": 425,
                            "column": 6
                          },
                          "end": {
                            "line": 425,
                            "column": 14
                          }
                        },
                        "name": "rotation"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13212,
                      "end": 13216,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 15
                        },
                        "end": {
                          "line": 425,
                          "column": 19
                        }
                      },
                      "name": "copy"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 13217,
                      "end": 13223,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 20
                        },
                        "end": {
                          "line": 425,
                          "column": 26
                        }
                      },
                      "name": "vector"
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 13227,
                "end": 13239,
                "loc": {
                  "start": {
                    "line": 426,
                    "column": 1
                  },
                  "end": {
                    "line": 426,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 13234,
                  "end": 13238,
                  "loc": {
                    "start": {
                      "line": 426,
                      "column": 8
                    },
                    "end": {
                      "line": 426,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13243,
      "end": 13414,
      "loc": {
        "start": {
          "line": 429,
          "column": 0
        },
        "end": {
          "line": 433,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13243,
        "end": 13414,
        "loc": {
          "start": {
            "line": 429,
            "column": 0
          },
          "end": {
            "line": 433,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13243,
          "end": 13276,
          "loc": {
            "start": {
              "line": 429,
              "column": 0
            },
            "end": {
              "line": 429,
              "column": 33
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13243,
            "end": 13267,
            "loc": {
              "start": {
                "line": 429,
                "column": 0
              },
              "end": {
                "line": 429,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13243,
              "end": 13257,
              "loc": {
                "start": {
                  "line": 429,
                  "column": 0
                },
                "end": {
                  "line": 429,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13243,
                "end": 13248,
                "loc": {
                  "start": {
                    "line": 429,
                    "column": 0
                  },
                  "end": {
                    "line": 429,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13249,
                "end": 13257,
                "loc": {
                  "start": {
                    "line": 429,
                    "column": 6
                  },
                  "end": {
                    "line": 429,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13258,
              "end": 13267,
              "loc": {
                "start": {
                  "line": 429,
                  "column": 15
                },
                "end": {
                  "line": 429,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13268,
            "end": 13276,
            "loc": {
              "start": {
                "line": 429,
                "column": 25
              },
              "end": {
                "line": 429,
                "column": 33
              }
            },
            "name": "setScale"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13279,
          "end": 13414,
          "loc": {
            "start": {
              "line": 429,
              "column": 36
            },
            "end": {
              "line": 433,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13268,
            "end": 13276,
            "loc": {
              "start": {
                "line": 429,
                "column": 25
              },
              "end": {
                "line": 429,
                "column": 33
              }
            },
            "name": "setScale"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 13288,
              "end": 13294,
              "loc": {
                "start": {
                  "line": 429,
                  "column": 45
                },
                "end": {
                  "line": 429,
                  "column": 51
                }
              },
              "name": "vector"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13296,
            "end": 13414,
            "loc": {
              "start": {
                "line": 429,
                "column": 53
              },
              "end": {
                "line": 433,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 13299,
                "end": 13372,
                "loc": {
                  "start": {
                    "line": 430,
                    "column": 1
                  },
                  "end": {
                    "line": 430,
                    "column": 74
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13299,
                  "end": 13371,
                  "loc": {
                    "start": {
                      "line": 430,
                      "column": 1
                    },
                    "end": {
                      "line": 430,
                      "column": 73
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 13299,
                    "end": 13305,
                    "loc": {
                      "start": {
                        "line": 430,
                        "column": 1
                      },
                      "end": {
                        "line": 430,
                        "column": 7
                      }
                    },
                    "name": "vector"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 13308,
                    "end": 13371,
                    "loc": {
                      "start": {
                        "line": 430,
                        "column": 10
                      },
                      "end": {
                        "line": 430,
                        "column": 73
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 13308,
                      "end": 13328,
                      "loc": {
                        "start": {
                          "line": 430,
                          "column": 10
                        },
                        "end": {
                          "line": 430,
                          "column": 30
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 13308,
                        "end": 13324,
                        "loc": {
                          "start": {
                            "line": 430,
                            "column": 10
                          },
                          "end": {
                            "line": 430,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13308,
                          "end": 13317,
                          "loc": {
                            "start": {
                              "line": 430,
                              "column": 10
                            },
                            "end": {
                              "line": 430,
                              "column": 19
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13318,
                          "end": 13324,
                          "loc": {
                            "start": {
                              "line": 430,
                              "column": 20
                            },
                            "end": {
                              "line": 430,
                              "column": 26
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 13327,
                        "end": 13328,
                        "loc": {
                          "start": {
                            "line": 430,
                            "column": 29
                          },
                          "end": {
                            "line": 430,
                            "column": 30
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "NewExpression",
                      "start": 13331,
                      "end": 13362,
                      "loc": {
                        "start": {
                          "line": 430,
                          "column": 33
                        },
                        "end": {
                          "line": 430,
                          "column": 64
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13335,
                        "end": 13348,
                        "loc": {
                          "start": {
                            "line": 430,
                            "column": 37
                          },
                          "end": {
                            "line": 430,
                            "column": 50
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13335,
                          "end": 13340,
                          "loc": {
                            "start": {
                              "line": 430,
                              "column": 37
                            },
                            "end": {
                              "line": 430,
                              "column": 42
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13341,
                          "end": 13348,
                          "loc": {
                            "start": {
                              "line": 430,
                              "column": 43
                            },
                            "end": {
                              "line": 430,
                              "column": 50
                            }
                          },
                          "name": "Vector3"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "SpreadElement",
                          "start": 13349,
                          "end": 13361,
                          "loc": {
                            "start": {
                              "line": 430,
                              "column": 51
                            },
                            "end": {
                              "line": 430,
                              "column": 63
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 13352,
                            "end": 13361,
                            "loc": {
                              "start": {
                                "line": 430,
                                "column": 54
                              },
                              "end": {
                                "line": 430,
                                "column": 63
                              }
                            },
                            "name": "arguments"
                          }
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 13365,
                      "end": 13371,
                      "loc": {
                        "start": {
                          "line": 430,
                          "column": 67
                        },
                        "end": {
                          "line": 430,
                          "column": 73
                        }
                      },
                      "name": "vector"
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13374,
                "end": 13398,
                "loc": {
                  "start": {
                    "line": 431,
                    "column": 1
                  },
                  "end": {
                    "line": 431,
                    "column": 25
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 13374,
                  "end": 13397,
                  "loc": {
                    "start": {
                      "line": 431,
                      "column": 1
                    },
                    "end": {
                      "line": 431,
                      "column": 24
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13374,
                    "end": 13389,
                    "loc": {
                      "start": {
                        "line": 431,
                        "column": 1
                      },
                      "end": {
                        "line": 431,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13374,
                      "end": 13384,
                      "loc": {
                        "start": {
                          "line": 431,
                          "column": 1
                        },
                        "end": {
                          "line": 431,
                          "column": 11
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13374,
                        "end": 13378,
                        "loc": {
                          "start": {
                            "line": 431,
                            "column": 1
                          },
                          "end": {
                            "line": 431,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13379,
                        "end": 13384,
                        "loc": {
                          "start": {
                            "line": 431,
                            "column": 6
                          },
                          "end": {
                            "line": 431,
                            "column": 11
                          }
                        },
                        "name": "scale"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13385,
                      "end": 13389,
                      "loc": {
                        "start": {
                          "line": 431,
                          "column": 12
                        },
                        "end": {
                          "line": 431,
                          "column": 16
                        }
                      },
                      "name": "copy"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 13390,
                      "end": 13396,
                      "loc": {
                        "start": {
                          "line": 431,
                          "column": 17
                        },
                        "end": {
                          "line": 431,
                          "column": 23
                        }
                      },
                      "name": "vector"
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 13400,
                "end": 13412,
                "loc": {
                  "start": {
                    "line": 432,
                    "column": 1
                  },
                  "end": {
                    "line": 432,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 13407,
                  "end": 13411,
                  "loc": {
                    "start": {
                      "line": 432,
                      "column": 8
                    },
                    "end": {
                      "line": 432,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13416,
      "end": 13640,
      "loc": {
        "start": {
          "line": 435,
          "column": 0
        },
        "end": {
          "line": 442,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13416,
        "end": 13640,
        "loc": {
          "start": {
            "line": 435,
            "column": 0
          },
          "end": {
            "line": 442,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13416,
          "end": 13455,
          "loc": {
            "start": {
              "line": 435,
              "column": 0
            },
            "end": {
              "line": 435,
              "column": 39
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13416,
            "end": 13440,
            "loc": {
              "start": {
                "line": 435,
                "column": 0
              },
              "end": {
                "line": 435,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13416,
              "end": 13430,
              "loc": {
                "start": {
                  "line": 435,
                  "column": 0
                },
                "end": {
                  "line": 435,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13416,
                "end": 13421,
                "loc": {
                  "start": {
                    "line": 435,
                    "column": 0
                  },
                  "end": {
                    "line": 435,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13422,
                "end": 13430,
                "loc": {
                  "start": {
                    "line": 435,
                    "column": 6
                  },
                  "end": {
                    "line": 435,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13431,
              "end": 13440,
              "loc": {
                "start": {
                  "line": 435,
                  "column": 15
                },
                "end": {
                  "line": 435,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13441,
            "end": 13455,
            "loc": {
              "start": {
                "line": 435,
                "column": 25
              },
              "end": {
                "line": 435,
                "column": 39
              }
            },
            "name": "setRenderOrder"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13458,
          "end": 13640,
          "loc": {
            "start": {
              "line": 435,
              "column": 42
            },
            "end": {
              "line": 442,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13441,
            "end": 13455,
            "loc": {
              "start": {
                "line": 435,
                "column": 25
              },
              "end": {
                "line": 435,
                "column": 39
              }
            },
            "name": "setRenderOrder"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 13467,
              "end": 13472,
              "loc": {
                "start": {
                  "line": 435,
                  "column": 51
                },
                "end": {
                  "line": 435,
                  "column": 56
                }
              },
              "name": "index"
            },
            {
              "type": "Identifier",
              "start": 13474,
              "end": 13479,
              "loc": {
                "start": {
                  "line": 435,
                  "column": 58
                },
                "end": {
                  "line": 435,
                  "column": 63
                }
              },
              "name": "lines"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13481,
            "end": 13640,
            "loc": {
              "start": {
                "line": 435,
                "column": 65
              },
              "end": {
                "line": 442,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 13484,
                "end": 13624,
                "loc": {
                  "start": {
                    "line": 436,
                    "column": 1
                  },
                  "end": {
                    "line": 440,
                    "column": 4
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 13484,
                  "end": 13623,
                  "loc": {
                    "start": {
                      "line": 436,
                      "column": 1
                    },
                    "end": {
                      "line": 440,
                      "column": 3
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13484,
                    "end": 13497,
                    "loc": {
                      "start": {
                        "line": 436,
                        "column": 1
                      },
                      "end": {
                        "line": 436,
                        "column": 14
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 13484,
                      "end": 13488,
                      "loc": {
                        "start": {
                          "line": 436,
                          "column": 1
                        },
                        "end": {
                          "line": 436,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13489,
                      "end": 13497,
                      "loc": {
                        "start": {
                          "line": 436,
                          "column": 6
                        },
                        "end": {
                          "line": 436,
                          "column": 14
                        }
                      },
                      "name": "traverse"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 13498,
                      "end": 13622,
                      "loc": {
                        "start": {
                          "line": 436,
                          "column": 15
                        },
                        "end": {
                          "line": 440,
                          "column": 2
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 13498,
                          "end": 13502,
                          "loc": {
                            "start": {
                              "line": 436,
                              "column": 15
                            },
                            "end": {
                              "line": 436,
                              "column": 19
                            }
                          },
                          "name": "item"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 13506,
                        "end": 13622,
                        "loc": {
                          "start": {
                            "line": 436,
                            "column": 23
                          },
                          "end": {
                            "line": 440,
                            "column": 2
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 13510,
                            "end": 13619,
                            "loc": {
                              "start": {
                                "line": 437,
                                "column": 2
                              },
                              "end": {
                                "line": 439,
                                "column": 3
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 13514,
                              "end": 13583,
                              "loc": {
                                "start": {
                                  "line": 437,
                                  "column": 6
                                },
                                "end": {
                                  "line": 437,
                                  "column": 75
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 13514,
                                "end": 13540,
                                "loc": {
                                  "start": {
                                    "line": 437,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 437,
                                    "column": 32
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 13514,
                                  "end": 13518,
                                  "loc": {
                                    "start": {
                                      "line": 437,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 437,
                                      "column": 10
                                    }
                                  },
                                  "name": "item"
                                },
                                "operator": "instanceof",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 13530,
                                  "end": 13540,
                                  "loc": {
                                    "start": {
                                      "line": 437,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 437,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13530,
                                    "end": 13535,
                                    "loc": {
                                      "start": {
                                        "line": 437,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 437,
                                        "column": 27
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13536,
                                    "end": 13540,
                                    "loc": {
                                      "start": {
                                        "line": 437,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 437,
                                        "column": 32
                                      }
                                    },
                                    "name": "Mesh"
                                  },
                                  "computed": false
                                }
                              },
                              "operator": "||",
                              "right": {
                                "type": "LogicalExpression",
                                "start": 13545,
                                "end": 13582,
                                "loc": {
                                  "start": {
                                    "line": 437,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 437,
                                    "column": 74
                                  }
                                },
                                "left": {
                                  "type": "UnaryExpression",
                                  "start": 13545,
                                  "end": 13552,
                                  "loc": {
                                    "start": {
                                      "line": 437,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 437,
                                      "column": 44
                                    }
                                  },
                                  "operator": "!",
                                  "prefix": true,
                                  "argument": {
                                    "type": "UnaryExpression",
                                    "start": 13546,
                                    "end": 13552,
                                    "loc": {
                                      "start": {
                                        "line": 437,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 437,
                                        "column": 44
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "Identifier",
                                      "start": 13547,
                                      "end": 13552,
                                      "loc": {
                                        "start": {
                                          "line": 437,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 437,
                                          "column": 44
                                        }
                                      },
                                      "name": "lines"
                                    }
                                  }
                                },
                                "operator": "&&",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 13556,
                                  "end": 13582,
                                  "loc": {
                                    "start": {
                                      "line": 437,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 437,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 13556,
                                    "end": 13560,
                                    "loc": {
                                      "start": {
                                        "line": 437,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 437,
                                        "column": 52
                                      }
                                    },
                                    "name": "item"
                                  },
                                  "operator": "instanceof",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 13572,
                                    "end": 13582,
                                    "loc": {
                                      "start": {
                                        "line": 437,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 437,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 13572,
                                      "end": 13577,
                                      "loc": {
                                        "start": {
                                          "line": 437,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 437,
                                          "column": 69
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 13578,
                                      "end": 13582,
                                      "loc": {
                                        "start": {
                                          "line": 437,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 437,
                                          "column": 74
                                        }
                                      },
                                      "name": "Line"
                                    },
                                    "computed": false
                                  }
                                },
                                "parenthesizedExpression": true
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 13585,
                              "end": 13619,
                              "loc": {
                                "start": {
                                  "line": 437,
                                  "column": 77
                                },
                                "end": {
                                  "line": 439,
                                  "column": 3
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 13590,
                                  "end": 13615,
                                  "loc": {
                                    "start": {
                                      "line": 438,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 438,
                                      "column": 28
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 13590,
                                    "end": 13614,
                                    "loc": {
                                      "start": {
                                        "line": 438,
                                        "column": 3
                                      },
                                      "end": {
                                        "line": 438,
                                        "column": 27
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 13590,
                                      "end": 13606,
                                      "loc": {
                                        "start": {
                                          "line": 438,
                                          "column": 3
                                        },
                                        "end": {
                                          "line": 438,
                                          "column": 19
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 13590,
                                        "end": 13594,
                                        "loc": {
                                          "start": {
                                            "line": 438,
                                            "column": 3
                                          },
                                          "end": {
                                            "line": 438,
                                            "column": 7
                                          }
                                        },
                                        "name": "item"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 13595,
                                        "end": 13606,
                                        "loc": {
                                          "start": {
                                            "line": 438,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 438,
                                            "column": 19
                                          }
                                        },
                                        "name": "renderOrder"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 13609,
                                      "end": 13614,
                                      "loc": {
                                        "start": {
                                          "line": 438,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 438,
                                          "column": 27
                                        }
                                      },
                                      "name": "index"
                                    }
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 13626,
                "end": 13638,
                "loc": {
                  "start": {
                    "line": 441,
                    "column": 1
                  },
                  "end": {
                    "line": 441,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 13633,
                  "end": 13637,
                  "loc": {
                    "start": {
                      "line": 441,
                      "column": 8
                    },
                    "end": {
                      "line": 441,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13642,
      "end": 14043,
      "loc": {
        "start": {
          "line": 444,
          "column": 0
        },
        "end": {
          "line": 453,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13642,
        "end": 14043,
        "loc": {
          "start": {
            "line": 444,
            "column": 0
          },
          "end": {
            "line": 453,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13642,
          "end": 13679,
          "loc": {
            "start": {
              "line": 444,
              "column": 0
            },
            "end": {
              "line": 444,
              "column": 37
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13642,
            "end": 13666,
            "loc": {
              "start": {
                "line": 444,
                "column": 0
              },
              "end": {
                "line": 444,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13642,
              "end": 13656,
              "loc": {
                "start": {
                  "line": 444,
                  "column": 0
                },
                "end": {
                  "line": 444,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13642,
                "end": 13647,
                "loc": {
                  "start": {
                    "line": 444,
                    "column": 0
                  },
                  "end": {
                    "line": 444,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13648,
                "end": 13656,
                "loc": {
                  "start": {
                    "line": 444,
                    "column": 6
                  },
                  "end": {
                    "line": 444,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13657,
              "end": 13666,
              "loc": {
                "start": {
                  "line": 444,
                  "column": 15
                },
                "end": {
                  "line": 444,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13667,
            "end": 13679,
            "loc": {
              "start": {
                "line": 444,
                "column": 25
              },
              "end": {
                "line": 444,
                "column": 37
              }
            },
            "name": "updateBounds"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13682,
          "end": 14043,
          "loc": {
            "start": {
              "line": 444,
              "column": 40
            },
            "end": {
              "line": 453,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13667,
            "end": 13679,
            "loc": {
              "start": {
                "line": 444,
                "column": 25
              },
              "end": {
                "line": 444,
                "column": 37
              }
            },
            "name": "updateBounds"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 13691,
              "end": 13706,
              "loc": {
                "start": {
                  "line": 444,
                  "column": 49
                },
                "end": {
                  "line": 444,
                  "column": 64
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 13691,
                "end": 13694,
                "loc": {
                  "start": {
                    "line": 444,
                    "column": 49
                  },
                  "end": {
                    "line": 444,
                    "column": 52
                  }
                },
                "name": "box"
              },
              "right": {
                "type": "Identifier",
                "start": 13697,
                "end": 13706,
                "loc": {
                  "start": {
                    "line": 444,
                    "column": 55
                  },
                  "end": {
                    "line": 444,
                    "column": 64
                  }
                },
                "name": "undefined"
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13708,
            "end": 14043,
            "loc": {
              "start": {
                "line": 444,
                "column": 66
              },
              "end": {
                "line": 453,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 13711,
                "end": 13799,
                "loc": {
                  "start": {
                    "line": 445,
                    "column": 1
                  },
                  "end": {
                    "line": 448,
                    "column": 3
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13711,
                  "end": 13798,
                  "loc": {
                    "start": {
                      "line": 445,
                      "column": 1
                    },
                    "end": {
                      "line": 448,
                      "column": 2
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 13711,
                    "end": 13722,
                    "loc": {
                      "start": {
                        "line": 445,
                        "column": 1
                      },
                      "end": {
                        "line": 445,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 13711,
                      "end": 13715,
                      "loc": {
                        "start": {
                          "line": 445,
                          "column": 1
                        },
                        "end": {
                          "line": 445,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13716,
                      "end": 13722,
                      "loc": {
                        "start": {
                          "line": 445,
                          "column": 6
                        },
                        "end": {
                          "line": 445,
                          "column": 12
                        }
                      },
                      "name": "bounds"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "LogicalExpression",
                    "start": 13725,
                    "end": 13798,
                    "loc": {
                      "start": {
                        "line": 445,
                        "column": 15
                      },
                      "end": {
                        "line": 448,
                        "column": 2
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 13725,
                      "end": 13736,
                      "loc": {
                        "start": {
                          "line": 445,
                          "column": 15
                        },
                        "end": {
                          "line": 445,
                          "column": 26
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13725,
                        "end": 13729,
                        "loc": {
                          "start": {
                            "line": 445,
                            "column": 15
                          },
                          "end": {
                            "line": 445,
                            "column": 19
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13730,
                        "end": 13736,
                        "loc": {
                          "start": {
                            "line": 445,
                            "column": 20
                          },
                          "end": {
                            "line": 445,
                            "column": 26
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "operator": "||",
                    "right": {
                      "type": "ObjectExpression",
                      "start": 13740,
                      "end": 13798,
                      "loc": {
                        "start": {
                          "line": 445,
                          "column": 30
                        },
                        "end": {
                          "line": 448,
                          "column": 2
                        }
                      },
                      "properties": [
                        {
                          "type": "Property",
                          "start": 13744,
                          "end": 13765,
                          "loc": {
                            "start": {
                              "line": 446,
                              "column": 2
                            },
                            "end": {
                              "line": 446,
                              "column": 23
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 13744,
                            "end": 13747,
                            "loc": {
                              "start": {
                                "line": 446,
                                "column": 2
                              },
                              "end": {
                                "line": 446,
                                "column": 5
                              }
                            },
                            "name": "box"
                          },
                          "value": {
                            "type": "NewExpression",
                            "start": 13749,
                            "end": 13765,
                            "loc": {
                              "start": {
                                "line": 446,
                                "column": 7
                              },
                              "end": {
                                "line": 446,
                                "column": 23
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13753,
                              "end": 13763,
                              "loc": {
                                "start": {
                                  "line": 446,
                                  "column": 11
                                },
                                "end": {
                                  "line": 446,
                                  "column": 21
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13753,
                                "end": 13758,
                                "loc": {
                                  "start": {
                                    "line": 446,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 446,
                                    "column": 16
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13759,
                                "end": 13763,
                                "loc": {
                                  "start": {
                                    "line": 446,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 446,
                                    "column": 21
                                  }
                                },
                                "name": "Box3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 13769,
                          "end": 13795,
                          "loc": {
                            "start": {
                              "line": 447,
                              "column": 2
                            },
                            "end": {
                              "line": 447,
                              "column": 28
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 13769,
                            "end": 13775,
                            "loc": {
                              "start": {
                                "line": 447,
                                "column": 2
                              },
                              "end": {
                                "line": 447,
                                "column": 8
                              }
                            },
                            "name": "sphere"
                          },
                          "value": {
                            "type": "NewExpression",
                            "start": 13777,
                            "end": 13795,
                            "loc": {
                              "start": {
                                "line": 447,
                                "column": 10
                              },
                              "end": {
                                "line": 447,
                                "column": 28
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13781,
                              "end": 13793,
                              "loc": {
                                "start": {
                                  "line": 447,
                                  "column": 14
                                },
                                "end": {
                                  "line": 447,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13781,
                                "end": 13786,
                                "loc": {
                                  "start": {
                                    "line": 447,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 447,
                                    "column": 19
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13787,
                                "end": 13793,
                                "loc": {
                                  "start": {
                                    "line": 447,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 447,
                                    "column": 26
                                  }
                                },
                                "name": "Sphere"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "kind": "init"
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13801,
                "end": 13893,
                "loc": {
                  "start": {
                    "line": 449,
                    "column": 1
                  },
                  "end": {
                    "line": 449,
                    "column": 93
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13801,
                  "end": 13892,
                  "loc": {
                    "start": {
                      "line": 449,
                      "column": 1
                    },
                    "end": {
                      "line": 449,
                      "column": 92
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 13801,
                    "end": 13816,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 1
                      },
                      "end": {
                        "line": 449,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13801,
                      "end": 13812,
                      "loc": {
                        "start": {
                          "line": 449,
                          "column": 1
                        },
                        "end": {
                          "line": 449,
                          "column": 12
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13801,
                        "end": 13805,
                        "loc": {
                          "start": {
                            "line": 449,
                            "column": 1
                          },
                          "end": {
                            "line": 449,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13806,
                        "end": 13812,
                        "loc": {
                          "start": {
                            "line": 449,
                            "column": 6
                          },
                          "end": {
                            "line": 449,
                            "column": 12
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13813,
                      "end": 13816,
                      "loc": {
                        "start": {
                          "line": 449,
                          "column": 13
                        },
                        "end": {
                          "line": 449,
                          "column": 16
                        }
                      },
                      "name": "box"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 13819,
                    "end": 13892,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 19
                      },
                      "end": {
                        "line": 449,
                        "column": 92
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 13819,
                      "end": 13824,
                      "loc": {
                        "start": {
                          "line": 449,
                          "column": 19
                        },
                        "end": {
                          "line": 449,
                          "column": 24
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "UnaryExpression",
                        "start": 13820,
                        "end": 13824,
                        "loc": {
                          "start": {
                            "line": 449,
                            "column": 20
                          },
                          "end": {
                            "line": 449,
                            "column": 24
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 13821,
                          "end": 13824,
                          "loc": {
                            "start": {
                              "line": 449,
                              "column": 21
                            },
                            "end": {
                              "line": 449,
                              "column": 24
                            }
                          },
                          "name": "box"
                        }
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 13827,
                      "end": 13853,
                      "loc": {
                        "start": {
                          "line": 449,
                          "column": 27
                        },
                        "end": {
                          "line": 449,
                          "column": 53
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13827,
                        "end": 13848,
                        "loc": {
                          "start": {
                            "line": 449,
                            "column": 27
                          },
                          "end": {
                            "line": 449,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 13827,
                          "end": 13842,
                          "loc": {
                            "start": {
                              "line": 449,
                              "column": 27
                            },
                            "end": {
                              "line": 449,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13827,
                            "end": 13838,
                            "loc": {
                              "start": {
                                "line": 449,
                                "column": 27
                              },
                              "end": {
                                "line": 449,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 13827,
                              "end": 13831,
                              "loc": {
                                "start": {
                                  "line": 449,
                                  "column": 27
                                },
                                "end": {
                                  "line": 449,
                                  "column": 31
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13832,
                              "end": 13838,
                              "loc": {
                                "start": {
                                  "line": 449,
                                  "column": 32
                                },
                                "end": {
                                  "line": 449,
                                  "column": 38
                                }
                              },
                              "name": "bounds"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13839,
                            "end": 13842,
                            "loc": {
                              "start": {
                                "line": 449,
                                "column": 39
                              },
                              "end": {
                                "line": 449,
                                "column": 42
                              }
                            },
                            "name": "box"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13843,
                          "end": 13848,
                          "loc": {
                            "start": {
                              "line": 449,
                              "column": 43
                            },
                            "end": {
                              "line": 449,
                              "column": 48
                            }
                          },
                          "name": "union"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 13849,
                          "end": 13852,
                          "loc": {
                            "start": {
                              "line": 449,
                              "column": 49
                            },
                            "end": {
                              "line": 449,
                              "column": 52
                            }
                          },
                          "name": "box"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "CallExpression",
                      "start": 13856,
                      "end": 13892,
                      "loc": {
                        "start": {
                          "line": 449,
                          "column": 56
                        },
                        "end": {
                          "line": 449,
                          "column": 92
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13856,
                        "end": 13886,
                        "loc": {
                          "start": {
                            "line": 449,
                            "column": 56
                          },
                          "end": {
                            "line": 449,
                            "column": 86
                          }
                        },
                        "object": {
                          "type": "NewExpression",
                          "start": 13856,
                          "end": 13872,
                          "loc": {
                            "start": {
                              "line": 449,
                              "column": 56
                            },
                            "end": {
                              "line": 449,
                              "column": 72
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 13860,
                            "end": 13870,
                            "loc": {
                              "start": {
                                "line": 449,
                                "column": 60
                              },
                              "end": {
                                "line": 449,
                                "column": 70
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13860,
                              "end": 13865,
                              "loc": {
                                "start": {
                                  "line": 449,
                                  "column": 60
                                },
                                "end": {
                                  "line": 449,
                                  "column": 65
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13866,
                              "end": 13870,
                              "loc": {
                                "start": {
                                  "line": 449,
                                  "column": 66
                                },
                                "end": {
                                  "line": 449,
                                  "column": 70
                                }
                              },
                              "name": "Box3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13873,
                          "end": 13886,
                          "loc": {
                            "start": {
                              "line": 449,
                              "column": 73
                            },
                            "end": {
                              "line": 449,
                              "column": 86
                            }
                          },
                          "name": "setFromObject"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 13887,
                          "end": 13891,
                          "loc": {
                            "start": {
                              "line": 449,
                              "column": 87
                            },
                            "end": {
                              "line": 449,
                              "column": 91
                            }
                          }
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13895,
                "end": 13952,
                "loc": {
                  "start": {
                    "line": 450,
                    "column": 1
                  },
                  "end": {
                    "line": 450,
                    "column": 58
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13895,
                  "end": 13951,
                  "loc": {
                    "start": {
                      "line": 450,
                      "column": 1
                    },
                    "end": {
                      "line": 450,
                      "column": 57
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 13895,
                    "end": 13913,
                    "loc": {
                      "start": {
                        "line": 450,
                        "column": 1
                      },
                      "end": {
                        "line": 450,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13895,
                      "end": 13906,
                      "loc": {
                        "start": {
                          "line": 450,
                          "column": 1
                        },
                        "end": {
                          "line": 450,
                          "column": 12
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13895,
                        "end": 13899,
                        "loc": {
                          "start": {
                            "line": 450,
                            "column": 1
                          },
                          "end": {
                            "line": 450,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13900,
                        "end": 13906,
                        "loc": {
                          "start": {
                            "line": 450,
                            "column": 6
                          },
                          "end": {
                            "line": 450,
                            "column": 12
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13907,
                      "end": 13913,
                      "loc": {
                        "start": {
                          "line": 450,
                          "column": 13
                        },
                        "end": {
                          "line": 450,
                          "column": 19
                        }
                      },
                      "name": "sphere"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "CallExpression",
                    "start": 13916,
                    "end": 13951,
                    "loc": {
                      "start": {
                        "line": 450,
                        "column": 22
                      },
                      "end": {
                        "line": 450,
                        "column": 57
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 13916,
                      "end": 13949,
                      "loc": {
                        "start": {
                          "line": 450,
                          "column": 22
                        },
                        "end": {
                          "line": 450,
                          "column": 55
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 13916,
                        "end": 13931,
                        "loc": {
                          "start": {
                            "line": 450,
                            "column": 22
                          },
                          "end": {
                            "line": 450,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 13916,
                          "end": 13927,
                          "loc": {
                            "start": {
                              "line": 450,
                              "column": 22
                            },
                            "end": {
                              "line": 450,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13916,
                            "end": 13920,
                            "loc": {
                              "start": {
                                "line": 450,
                                "column": 22
                              },
                              "end": {
                                "line": 450,
                                "column": 26
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13921,
                            "end": 13927,
                            "loc": {
                              "start": {
                                "line": 450,
                                "column": 27
                              },
                              "end": {
                                "line": 450,
                                "column": 33
                              }
                            },
                            "name": "bounds"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13928,
                          "end": 13931,
                          "loc": {
                            "start": {
                              "line": 450,
                              "column": 34
                            },
                            "end": {
                              "line": 450,
                              "column": 37
                            }
                          },
                          "name": "box"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13932,
                        "end": 13949,
                        "loc": {
                          "start": {
                            "line": 450,
                            "column": 38
                          },
                          "end": {
                            "line": 450,
                            "column": 55
                          }
                        },
                        "name": "getBoundingSphere"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13954,
                "end": 14027,
                "loc": {
                  "start": {
                    "line": 451,
                    "column": 1
                  },
                  "end": {
                    "line": 451,
                    "column": 74
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 13954,
                  "end": 14026,
                  "loc": {
                    "start": {
                      "line": 451,
                      "column": 1
                    },
                    "end": {
                      "line": 451,
                      "column": 73
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 13954,
                    "end": 13963,
                    "loc": {
                      "start": {
                        "line": 451,
                        "column": 1
                      },
                      "end": {
                        "line": 451,
                        "column": 10
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 13954,
                      "end": 13958,
                      "loc": {
                        "start": {
                          "line": 451,
                          "column": 1
                        },
                        "end": {
                          "line": 451,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13959,
                      "end": 13963,
                      "loc": {
                        "start": {
                          "line": 451,
                          "column": 6
                        },
                        "end": {
                          "line": 451,
                          "column": 10
                        }
                      },
                      "name": "view"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 13967,
                    "end": 14026,
                    "loc": {
                      "start": {
                        "line": 451,
                        "column": 14
                      },
                      "end": {
                        "line": 451,
                        "column": 73
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 13967,
                      "end": 13989,
                      "loc": {
                        "start": {
                          "line": 451,
                          "column": 14
                        },
                        "end": {
                          "line": 451,
                          "column": 36
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 13967,
                        "end": 13976,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 14
                          },
                          "end": {
                            "line": 451,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 13967,
                          "end": 13971,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 14
                            },
                            "end": {
                              "line": 451,
                              "column": 18
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13972,
                          "end": 13976,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 19
                            },
                            "end": {
                              "line": 451,
                              "column": 23
                            }
                          },
                          "name": "view"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13977,
                        "end": 13989,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 24
                          },
                          "end": {
                            "line": 451,
                            "column": 36
                          }
                        },
                        "name": "updateBounds"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ConditionalExpression",
                        "start": 13990,
                        "end": 14025,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 37
                          },
                          "end": {
                            "line": 451,
                            "column": 72
                          }
                        },
                        "test": {
                          "type": "UnaryExpression",
                          "start": 13990,
                          "end": 13995,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 37
                            },
                            "end": {
                              "line": 451,
                              "column": 42
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 13991,
                            "end": 13995,
                            "loc": {
                              "start": {
                                "line": 451,
                                "column": 38
                              },
                              "end": {
                                "line": 451,
                                "column": 42
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 13992,
                              "end": 13995,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 39
                                },
                                "end": {
                                  "line": 451,
                                  "column": 42
                                }
                              },
                              "name": "box"
                            }
                          }
                        },
                        "consequent": {
                          "type": "MemberExpression",
                          "start": 13998,
                          "end": 14013,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 45
                            },
                            "end": {
                              "line": 451,
                              "column": 60
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13998,
                            "end": 14009,
                            "loc": {
                              "start": {
                                "line": 451,
                                "column": 45
                              },
                              "end": {
                                "line": 451,
                                "column": 56
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 13998,
                              "end": 14002,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 45
                                },
                                "end": {
                                  "line": 451,
                                  "column": 49
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14003,
                              "end": 14009,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 50
                                },
                                "end": {
                                  "line": 451,
                                  "column": 56
                                }
                              },
                              "name": "bounds"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14010,
                            "end": 14013,
                            "loc": {
                              "start": {
                                "line": 451,
                                "column": 57
                              },
                              "end": {
                                "line": 451,
                                "column": 60
                              }
                            },
                            "name": "box"
                          },
                          "computed": false
                        },
                        "alternate": {
                          "type": "Identifier",
                          "start": 14016,
                          "end": 14025,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 63
                            },
                            "end": {
                              "line": 451,
                              "column": 72
                            }
                          },
                          "name": "undefined"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "start": 14029,
                "end": 14041,
                "loc": {
                  "start": {
                    "line": 452,
                    "column": 1
                  },
                  "end": {
                    "line": 452,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 14036,
                  "end": 14040,
                  "loc": {
                    "start": {
                      "line": 452,
                      "column": 8
                    },
                    "end": {
                      "line": 452,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14045,
      "end": 14201,
      "loc": {
        "start": {
          "line": 455,
          "column": 0
        },
        "end": {
          "line": 458,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14045,
        "end": 14201,
        "loc": {
          "start": {
            "line": 455,
            "column": 0
          },
          "end": {
            "line": 458,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14045,
          "end": 14079,
          "loc": {
            "start": {
              "line": 455,
              "column": 0
            },
            "end": {
              "line": 455,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14045,
            "end": 14069,
            "loc": {
              "start": {
                "line": 455,
                "column": 0
              },
              "end": {
                "line": 455,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14045,
              "end": 14059,
              "loc": {
                "start": {
                  "line": 455,
                  "column": 0
                },
                "end": {
                  "line": 455,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14045,
                "end": 14050,
                "loc": {
                  "start": {
                    "line": 455,
                    "column": 0
                  },
                  "end": {
                    "line": 455,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14051,
                "end": 14059,
                "loc": {
                  "start": {
                    "line": 455,
                    "column": 6
                  },
                  "end": {
                    "line": 455,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 14060,
              "end": 14069,
              "loc": {
                "start": {
                  "line": 455,
                  "column": 15
                },
                "end": {
                  "line": 455,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 14070,
            "end": 14079,
            "loc": {
              "start": {
                "line": 455,
                "column": 25
              },
              "end": {
                "line": 455,
                "column": 34
              }
            },
            "name": "getCenter"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 14082,
          "end": 14201,
          "loc": {
            "start": {
              "line": 455,
              "column": 37
            },
            "end": {
              "line": 458,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 14070,
            "end": 14079,
            "loc": {
              "start": {
                "line": 455,
                "column": 25
              },
              "end": {
                "line": 455,
                "column": 34
              }
            },
            "name": "getCenter"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 14091,
              "end": 14096,
              "loc": {
                "start": {
                  "line": 455,
                  "column": 46
                },
                "end": {
                  "line": 455,
                  "column": 51
                }
              },
              "name": "force"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 14098,
            "end": 14201,
            "loc": {
              "start": {
                "line": 455,
                "column": 53
              },
              "end": {
                "line": 458,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 14104,
                "end": 14153,
                "loc": {
                  "start": {
                    "line": 456,
                    "column": 4
                  },
                  "end": {
                    "line": 456,
                    "column": 53
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 14108,
                  "end": 14131,
                  "loc": {
                    "start": {
                      "line": 456,
                      "column": 8
                    },
                    "end": {
                      "line": 456,
                      "column": 31
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 14108,
                    "end": 14113,
                    "loc": {
                      "start": {
                        "line": 456,
                        "column": 8
                      },
                      "end": {
                        "line": 456,
                        "column": 13
                      }
                    },
                    "name": "force"
                  },
                  "operator": "||",
                  "right": {
                    "type": "UnaryExpression",
                    "start": 14117,
                    "end": 14131,
                    "loc": {
                      "start": {
                        "line": 456,
                        "column": 17
                      },
                      "end": {
                        "line": 456,
                        "column": 31
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 14118,
                      "end": 14131,
                      "loc": {
                        "start": {
                          "line": 456,
                          "column": 18
                        },
                        "end": {
                          "line": 456,
                          "column": 31
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "UnaryExpression",
                        "start": 14119,
                        "end": 14131,
                        "loc": {
                          "start": {
                            "line": 456,
                            "column": 19
                          },
                          "end": {
                            "line": 456,
                            "column": 31
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 14120,
                          "end": 14131,
                          "loc": {
                            "start": {
                              "line": 456,
                              "column": 20
                            },
                            "end": {
                              "line": 456,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14120,
                            "end": 14124,
                            "loc": {
                              "start": {
                                "line": 456,
                                "column": 20
                              },
                              "end": {
                                "line": 456,
                                "column": 24
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14125,
                            "end": 14131,
                            "loc": {
                              "start": {
                                "line": 456,
                                "column": 25
                              },
                              "end": {
                                "line": 456,
                                "column": 31
                              }
                            },
                            "name": "bounds"
                          },
                          "computed": false
                        }
                      }
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 14133,
                  "end": 14153,
                  "loc": {
                    "start": {
                      "line": 456,
                      "column": 33
                    },
                    "end": {
                      "line": 456,
                      "column": 53
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 14133,
                    "end": 14152,
                    "loc": {
                      "start": {
                        "line": 456,
                        "column": 33
                      },
                      "end": {
                        "line": 456,
                        "column": 52
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14133,
                      "end": 14150,
                      "loc": {
                        "start": {
                          "line": 456,
                          "column": 33
                        },
                        "end": {
                          "line": 456,
                          "column": 50
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14133,
                        "end": 14137,
                        "loc": {
                          "start": {
                            "line": 456,
                            "column": 33
                          },
                          "end": {
                            "line": 456,
                            "column": 37
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14138,
                        "end": 14150,
                        "loc": {
                          "start": {
                            "line": 456,
                            "column": 38
                          },
                          "end": {
                            "line": 456,
                            "column": 50
                          }
                        },
                        "name": "updateBounds"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "ReturnStatement",
                "start": 14158,
                "end": 14199,
                "loc": {
                  "start": {
                    "line": 457,
                    "column": 4
                  },
                  "end": {
                    "line": 457,
                    "column": 45
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 14165,
                  "end": 14198,
                  "loc": {
                    "start": {
                      "line": 457,
                      "column": 11
                    },
                    "end": {
                      "line": 457,
                      "column": 44
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 14165,
                    "end": 14196,
                    "loc": {
                      "start": {
                        "line": 457,
                        "column": 11
                      },
                      "end": {
                        "line": 457,
                        "column": 42
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 14165,
                      "end": 14190,
                      "loc": {
                        "start": {
                          "line": 457,
                          "column": 11
                        },
                        "end": {
                          "line": 457,
                          "column": 36
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 14165,
                        "end": 14183,
                        "loc": {
                          "start": {
                            "line": 457,
                            "column": 11
                          },
                          "end": {
                            "line": 457,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 14165,
                          "end": 14176,
                          "loc": {
                            "start": {
                              "line": 457,
                              "column": 11
                            },
                            "end": {
                              "line": 457,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14165,
                            "end": 14169,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 11
                              },
                              "end": {
                                "line": 457,
                                "column": 15
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14170,
                            "end": 14176,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 16
                              },
                              "end": {
                                "line": 457,
                                "column": 22
                              }
                            },
                            "name": "bounds"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14177,
                          "end": 14183,
                          "loc": {
                            "start": {
                              "line": 457,
                              "column": 23
                            },
                            "end": {
                              "line": 457,
                              "column": 29
                            }
                          },
                          "name": "sphere"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14184,
                        "end": 14190,
                        "loc": {
                          "start": {
                            "line": 457,
                            "column": 30
                          },
                          "end": {
                            "line": 457,
                            "column": 36
                          }
                        },
                        "name": "center"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14191,
                      "end": 14196,
                      "loc": {
                        "start": {
                          "line": 457,
                          "column": 37
                        },
                        "end": {
                          "line": 457,
                          "column": 42
                        }
                      },
                      "name": "clone"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14203,
      "end": 14351,
      "loc": {
        "start": {
          "line": 460,
          "column": 0
        },
        "end": {
          "line": 463,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14203,
        "end": 14351,
        "loc": {
          "start": {
            "line": 460,
            "column": 0
          },
          "end": {
            "line": 463,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14203,
          "end": 14237,
          "loc": {
            "start": {
              "line": 460,
              "column": 0
            },
            "end": {
              "line": 460,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14203,
            "end": 14227,
            "loc": {
              "start": {
                "line": 460,
                "column": 0
              },
              "end": {
                "line": 460,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14203,
              "end": 14217,
              "loc": {
                "start": {
                  "line": 460,
                  "column": 0
                },
                "end": {
                  "line": 460,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14203,
                "end": 14208,
                "loc": {
                  "start": {
                    "line": 460,
                    "column": 0
                  },
                  "end": {
                    "line": 460,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14209,
                "end": 14217,
                "loc": {
                  "start": {
                    "line": 460,
                    "column": 6
                  },
                  "end": {
                    "line": 460,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 14218,
              "end": 14227,
              "loc": {
                "start": {
                  "line": 460,
                  "column": 15
                },
                "end": {
                  "line": 460,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 14228,
            "end": 14237,
            "loc": {
              "start": {
                "line": 460,
                "column": 25
              },
              "end": {
                "line": 460,
                "column": 34
              }
            },
            "name": "getRadius"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 14240,
          "end": 14351,
          "loc": {
            "start": {
              "line": 460,
              "column": 37
            },
            "end": {
              "line": 463,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 14228,
            "end": 14237,
            "loc": {
              "start": {
                "line": 460,
                "column": 25
              },
              "end": {
                "line": 460,
                "column": 34
              }
            },
            "name": "getRadius"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 14249,
              "end": 14254,
              "loc": {
                "start": {
                  "line": 460,
                  "column": 46
                },
                "end": {
                  "line": 460,
                  "column": 51
                }
              },
              "name": "force"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 14256,
            "end": 14351,
            "loc": {
              "start": {
                "line": 460,
                "column": 53
              },
              "end": {
                "line": 463,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 14262,
                "end": 14311,
                "loc": {
                  "start": {
                    "line": 461,
                    "column": 4
                  },
                  "end": {
                    "line": 461,
                    "column": 53
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 14266,
                  "end": 14289,
                  "loc": {
                    "start": {
                      "line": 461,
                      "column": 8
                    },
                    "end": {
                      "line": 461,
                      "column": 31
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 14266,
                    "end": 14271,
                    "loc": {
                      "start": {
                        "line": 461,
                        "column": 8
                      },
                      "end": {
                        "line": 461,
                        "column": 13
                      }
                    },
                    "name": "force"
                  },
                  "operator": "||",
                  "right": {
                    "type": "UnaryExpression",
                    "start": 14275,
                    "end": 14289,
                    "loc": {
                      "start": {
                        "line": 461,
                        "column": 17
                      },
                      "end": {
                        "line": 461,
                        "column": 31
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 14276,
                      "end": 14289,
                      "loc": {
                        "start": {
                          "line": 461,
                          "column": 18
                        },
                        "end": {
                          "line": 461,
                          "column": 31
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "UnaryExpression",
                        "start": 14277,
                        "end": 14289,
                        "loc": {
                          "start": {
                            "line": 461,
                            "column": 19
                          },
                          "end": {
                            "line": 461,
                            "column": 31
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 14278,
                          "end": 14289,
                          "loc": {
                            "start": {
                              "line": 461,
                              "column": 20
                            },
                            "end": {
                              "line": 461,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14278,
                            "end": 14282,
                            "loc": {
                              "start": {
                                "line": 461,
                                "column": 20
                              },
                              "end": {
                                "line": 461,
                                "column": 24
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14283,
                            "end": 14289,
                            "loc": {
                              "start": {
                                "line": 461,
                                "column": 25
                              },
                              "end": {
                                "line": 461,
                                "column": 31
                              }
                            },
                            "name": "bounds"
                          },
                          "computed": false
                        }
                      }
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 14291,
                  "end": 14311,
                  "loc": {
                    "start": {
                      "line": 461,
                      "column": 33
                    },
                    "end": {
                      "line": 461,
                      "column": 53
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 14291,
                    "end": 14310,
                    "loc": {
                      "start": {
                        "line": 461,
                        "column": 33
                      },
                      "end": {
                        "line": 461,
                        "column": 52
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14291,
                      "end": 14308,
                      "loc": {
                        "start": {
                          "line": 461,
                          "column": 33
                        },
                        "end": {
                          "line": 461,
                          "column": 50
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14291,
                        "end": 14295,
                        "loc": {
                          "start": {
                            "line": 461,
                            "column": 33
                          },
                          "end": {
                            "line": 461,
                            "column": 37
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14296,
                        "end": 14308,
                        "loc": {
                          "start": {
                            "line": 461,
                            "column": 38
                          },
                          "end": {
                            "line": 461,
                            "column": 50
                          }
                        },
                        "name": "updateBounds"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "ReturnStatement",
                "start": 14316,
                "end": 14349,
                "loc": {
                  "start": {
                    "line": 462,
                    "column": 4
                  },
                  "end": {
                    "line": 462,
                    "column": 37
                  }
                },
                "argument": {
                  "type": "MemberExpression",
                  "start": 14323,
                  "end": 14348,
                  "loc": {
                    "start": {
                      "line": 462,
                      "column": 11
                    },
                    "end": {
                      "line": 462,
                      "column": 36
                    }
                  },
                  "object": {
                    "type": "MemberExpression",
                    "start": 14323,
                    "end": 14341,
                    "loc": {
                      "start": {
                        "line": 462,
                        "column": 11
                      },
                      "end": {
                        "line": 462,
                        "column": 29
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 14323,
                      "end": 14334,
                      "loc": {
                        "start": {
                          "line": 462,
                          "column": 11
                        },
                        "end": {
                          "line": 462,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14323,
                        "end": 14327,
                        "loc": {
                          "start": {
                            "line": 462,
                            "column": 11
                          },
                          "end": {
                            "line": 462,
                            "column": 15
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14328,
                        "end": 14334,
                        "loc": {
                          "start": {
                            "line": 462,
                            "column": 16
                          },
                          "end": {
                            "line": 462,
                            "column": 22
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14335,
                      "end": 14341,
                      "loc": {
                        "start": {
                          "line": 462,
                          "column": 23
                        },
                        "end": {
                          "line": 462,
                          "column": 29
                        }
                      },
                      "name": "sphere"
                    },
                    "computed": false
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14342,
                    "end": 14348,
                    "loc": {
                      "start": {
                        "line": 462,
                        "column": 30
                      },
                      "end": {
                        "line": 462,
                        "column": 36
                      }
                    },
                    "name": "radius"
                  },
                  "computed": false
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14353,
      "end": 14950,
      "loc": {
        "start": {
          "line": 465,
          "column": 0
        },
        "end": {
          "line": 479,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14353,
        "end": 14950,
        "loc": {
          "start": {
            "line": 465,
            "column": 0
          },
          "end": {
            "line": 479,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14353,
          "end": 14392,
          "loc": {
            "start": {
              "line": 465,
              "column": 0
            },
            "end": {
              "line": 465,
              "column": 39
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14353,
            "end": 14377,
            "loc": {
              "start": {
                "line": 465,
                "column": 0
              },
              "end": {
                "line": 465,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14353,
              "end": 14367,
              "loc": {
                "start": {
                  "line": 465,
                  "column": 0
                },
                "end": {
                  "line": 465,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14353,
                "end": 14358,
                "loc": {
                  "start": {
                    "line": 465,
                    "column": 0
                  },
                  "end": {
                    "line": 465,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14359,
                "end": 14367,
                "loc": {
                  "start": {
                    "line": 465,
                    "column": 6
                  },
                  "end": {
                    "line": 465,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 14368,
              "end": 14377,
              "loc": {
                "start": {
                  "line": 465,
                  "column": 15
                },
                "end": {
                  "line": 465,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 14378,
            "end": 14392,
            "loc": {
              "start": {
                "line": 465,
                "column": 25
              },
              "end": {
                "line": 465,
                "column": 39
              }
            },
            "name": "centerGeometry"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 14395,
          "end": 14950,
          "loc": {
            "start": {
              "line": 465,
              "column": 42
            },
            "end": {
              "line": 479,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 14378,
            "end": 14392,
            "loc": {
              "start": {
                "line": 465,
                "column": 25
              },
              "end": {
                "line": 465,
                "column": 39
              }
            },
            "name": "centerGeometry"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 14404,
              "end": 14433,
              "loc": {
                "start": {
                  "line": 465,
                  "column": 51
                },
                "end": {
                  "line": 465,
                  "column": 80
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 14404,
                "end": 14410,
                "loc": {
                  "start": {
                    "line": 465,
                    "column": 51
                  },
                  "end": {
                    "line": 465,
                    "column": 57
                  }
                },
                "name": "center"
              },
              "right": {
                "type": "CallExpression",
                "start": 14413,
                "end": 14433,
                "loc": {
                  "start": {
                    "line": 465,
                    "column": 60
                  },
                  "end": {
                    "line": 465,
                    "column": 80
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 14413,
                  "end": 14427,
                  "loc": {
                    "start": {
                      "line": 465,
                      "column": 60
                    },
                    "end": {
                      "line": 465,
                      "column": 74
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 14413,
                    "end": 14417,
                    "loc": {
                      "start": {
                        "line": 465,
                        "column": 60
                      },
                      "end": {
                        "line": 465,
                        "column": 64
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14418,
                    "end": 14427,
                    "loc": {
                      "start": {
                        "line": 465,
                        "column": 65
                      },
                      "end": {
                        "line": 465,
                        "column": 74
                      }
                    },
                    "name": "getCenter"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 14428,
                    "end": 14432,
                    "loc": {
                      "start": {
                        "line": 465,
                        "column": 75
                      },
                      "end": {
                        "line": 465,
                        "column": 79
                      }
                    },
                    "value": true,
                    "rawValue": true,
                    "raw": "true"
                  }
                ]
              }
            },
            {
              "type": "Identifier",
              "start": 14435,
              "end": 14441,
              "loc": {
                "start": {
                  "line": 465,
                  "column": 82
                },
                "end": {
                  "line": 465,
                  "column": 88
                }
              },
              "name": "filter"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 14443,
            "end": 14950,
            "loc": {
              "start": {
                "line": 465,
                "column": 90
              },
              "end": {
                "line": 479,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 14446,
                "end": 14466,
                "loc": {
                  "start": {
                    "line": 466,
                    "column": 1
                  },
                  "end": {
                    "line": 466,
                    "column": 21
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 14446,
                  "end": 14465,
                  "loc": {
                    "start": {
                      "line": 466,
                      "column": 1
                    },
                    "end": {
                      "line": 466,
                      "column": 20
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 14446,
                    "end": 14463,
                    "loc": {
                      "start": {
                        "line": 466,
                        "column": 1
                      },
                      "end": {
                        "line": 466,
                        "column": 18
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 14446,
                      "end": 14450,
                      "loc": {
                        "start": {
                          "line": 466,
                          "column": 1
                        },
                        "end": {
                          "line": 466,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14451,
                      "end": 14463,
                      "loc": {
                        "start": {
                          "line": 466,
                          "column": 6
                        },
                        "end": {
                          "line": 466,
                          "column": 18
                        }
                      },
                      "name": "updateBounds"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 14468,
                "end": 14495,
                "loc": {
                  "start": {
                    "line": 467,
                    "column": 1
                  },
                  "end": {
                    "line": 467,
                    "column": 28
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 14468,
                  "end": 14494,
                  "loc": {
                    "start": {
                      "line": 467,
                      "column": 1
                    },
                    "end": {
                      "line": 467,
                      "column": 27
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 14468,
                    "end": 14486,
                    "loc": {
                      "start": {
                        "line": 467,
                        "column": 1
                      },
                      "end": {
                        "line": 467,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 14468,
                      "end": 14481,
                      "loc": {
                        "start": {
                          "line": 467,
                          "column": 1
                        },
                        "end": {
                          "line": 467,
                          "column": 14
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14468,
                        "end": 14472,
                        "loc": {
                          "start": {
                            "line": 467,
                            "column": 1
                          },
                          "end": {
                            "line": 467,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14473,
                        "end": 14481,
                        "loc": {
                          "start": {
                            "line": 467,
                            "column": 6
                          },
                          "end": {
                            "line": 467,
                            "column": 14
                          }
                        },
                        "name": "position"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14482,
                      "end": 14486,
                      "loc": {
                        "start": {
                          "line": 467,
                          "column": 15
                        },
                        "end": {
                          "line": 467,
                          "column": 19
                        }
                      },
                      "name": "copy"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 14487,
                      "end": 14493,
                      "loc": {
                        "start": {
                          "line": 467,
                          "column": 20
                        },
                        "end": {
                          "line": 467,
                          "column": 26
                        }
                      },
                      "name": "center"
                    }
                  ]
                }
              },
              {
                "type": "ForOfStatement",
                "start": 14497,
                "end": 14934,
                "loc": {
                  "start": {
                    "line": 468,
                    "column": 1
                  },
                  "end": {
                    "line": 477,
                    "column": 2
                  }
                },
                "left": {
                  "type": "VariableDeclaration",
                  "start": 14502,
                  "end": 14511,
                  "loc": {
                    "start": {
                      "line": 468,
                      "column": 6
                    },
                    "end": {
                      "line": 468,
                      "column": 15
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 14506,
                      "end": 14511,
                      "loc": {
                        "start": {
                          "line": 468,
                          "column": 10
                        },
                        "end": {
                          "line": 468,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 14506,
                        "end": 14511,
                        "loc": {
                          "start": {
                            "line": 468,
                            "column": 10
                          },
                          "end": {
                            "line": 468,
                            "column": 15
                          }
                        },
                        "name": "child"
                      },
                      "init": null
                    }
                  ],
                  "kind": "let"
                },
                "right": {
                  "type": "MemberExpression",
                  "start": 14515,
                  "end": 14528,
                  "loc": {
                    "start": {
                      "line": 468,
                      "column": 19
                    },
                    "end": {
                      "line": 468,
                      "column": 32
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 14515,
                    "end": 14519,
                    "loc": {
                      "start": {
                        "line": 468,
                        "column": 19
                      },
                      "end": {
                        "line": 468,
                        "column": 23
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14520,
                    "end": 14528,
                    "loc": {
                      "start": {
                        "line": 468,
                        "column": 24
                      },
                      "end": {
                        "line": 468,
                        "column": 32
                      }
                    },
                    "name": "children"
                  },
                  "computed": false
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 14530,
                  "end": 14934,
                  "loc": {
                    "start": {
                      "line": 468,
                      "column": 34
                    },
                    "end": {
                      "line": 477,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 14534,
                      "end": 14931,
                      "loc": {
                        "start": {
                          "line": 469,
                          "column": 2
                        },
                        "end": {
                          "line": 476,
                          "column": 5
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 14534,
                        "end": 14930,
                        "loc": {
                          "start": {
                            "line": 469,
                            "column": 2
                          },
                          "end": {
                            "line": 476,
                            "column": 4
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14534,
                          "end": 14548,
                          "loc": {
                            "start": {
                              "line": 469,
                              "column": 2
                            },
                            "end": {
                              "line": 469,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14534,
                            "end": 14539,
                            "loc": {
                              "start": {
                                "line": 469,
                                "column": 2
                              },
                              "end": {
                                "line": 469,
                                "column": 7
                              }
                            },
                            "name": "child"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14540,
                            "end": 14548,
                            "loc": {
                              "start": {
                                "line": 469,
                                "column": 8
                              },
                              "end": {
                                "line": 469,
                                "column": 16
                              }
                            },
                            "name": "traverse"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 14549,
                            "end": 14929,
                            "loc": {
                              "start": {
                                "line": 469,
                                "column": 17
                              },
                              "end": {
                                "line": 476,
                                "column": 3
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 14549,
                                "end": 14554,
                                "loc": {
                                  "start": {
                                    "line": 469,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 469,
                                    "column": 22
                                  }
                                },
                                "name": "child"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 14558,
                              "end": 14929,
                              "loc": {
                                "start": {
                                  "line": 469,
                                  "column": 26
                                },
                                "end": {
                                  "line": 476,
                                  "column": 3
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 14563,
                                  "end": 14610,
                                  "loc": {
                                    "start": {
                                      "line": 470,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 470,
                                      "column": 50
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 14567,
                                    "end": 14601,
                                    "loc": {
                                      "start": {
                                        "line": 470,
                                        "column": 7
                                      },
                                      "end": {
                                        "line": 470,
                                        "column": 41
                                      }
                                    },
                                    "left": {
                                      "type": "UnaryExpression",
                                      "start": 14567,
                                      "end": 14575,
                                      "loc": {
                                        "start": {
                                          "line": 470,
                                          "column": 7
                                        },
                                        "end": {
                                          "line": 470,
                                          "column": 15
                                        }
                                      },
                                      "operator": "!",
                                      "prefix": true,
                                      "argument": {
                                        "type": "UnaryExpression",
                                        "start": 14568,
                                        "end": 14575,
                                        "loc": {
                                          "start": {
                                            "line": 470,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 470,
                                            "column": 15
                                          }
                                        },
                                        "operator": "!",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Identifier",
                                          "start": 14569,
                                          "end": 14575,
                                          "loc": {
                                            "start": {
                                              "line": 470,
                                              "column": 9
                                            },
                                            "end": {
                                              "line": 470,
                                              "column": 15
                                            }
                                          },
                                          "name": "filter"
                                        }
                                      }
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 14579,
                                      "end": 14601,
                                      "loc": {
                                        "start": {
                                          "line": 470,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 470,
                                          "column": 41
                                        }
                                      },
                                      "operator": "!",
                                      "prefix": true,
                                      "argument": {
                                        "type": "CallExpression",
                                        "start": 14580,
                                        "end": 14601,
                                        "loc": {
                                          "start": {
                                            "line": 470,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 470,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 14580,
                                          "end": 14586,
                                          "loc": {
                                            "start": {
                                              "line": 470,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 470,
                                              "column": 26
                                            }
                                          },
                                          "name": "filter"
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 14587,
                                            "end": 14592,
                                            "loc": {
                                              "start": {
                                                "line": 470,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 470,
                                                "column": 32
                                              }
                                            },
                                            "name": "child"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 14594,
                                            "end": 14600,
                                            "loc": {
                                              "start": {
                                                "line": 470,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 470,
                                                "column": 40
                                              }
                                            },
                                            "name": "center"
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 14603,
                                    "end": 14610,
                                    "loc": {
                                      "start": {
                                        "line": 470,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 470,
                                        "column": 50
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 14614,
                                  "end": 14925,
                                  "loc": {
                                    "start": {
                                      "line": 471,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 475,
                                      "column": 4
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 14618,
                                    "end": 14730,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 7
                                      },
                                      "end": {
                                        "line": 471,
                                        "column": 119
                                      }
                                    },
                                    "left": {
                                      "type": "UnaryExpression",
                                      "start": 14618,
                                      "end": 14634,
                                      "loc": {
                                        "start": {
                                          "line": 471,
                                          "column": 7
                                        },
                                        "end": {
                                          "line": 471,
                                          "column": 23
                                        }
                                      },
                                      "operator": "!",
                                      "prefix": true,
                                      "argument": {
                                        "type": "UnaryExpression",
                                        "start": 14619,
                                        "end": 14634,
                                        "loc": {
                                          "start": {
                                            "line": 471,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 471,
                                            "column": 23
                                          }
                                        },
                                        "operator": "!",
                                        "prefix": true,
                                        "argument": {
                                          "type": "MemberExpression",
                                          "start": 14620,
                                          "end": 14634,
                                          "loc": {
                                            "start": {
                                              "line": 471,
                                              "column": 9
                                            },
                                            "end": {
                                              "line": 471,
                                              "column": 23
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 14620,
                                            "end": 14625,
                                            "loc": {
                                              "start": {
                                                "line": 471,
                                                "column": 9
                                              },
                                              "end": {
                                                "line": 471,
                                                "column": 14
                                              }
                                            },
                                            "name": "child"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 14626,
                                            "end": 14634,
                                            "loc": {
                                              "start": {
                                                "line": 471,
                                                "column": 15
                                              },
                                              "end": {
                                                "line": 471,
                                                "column": 23
                                              }
                                            },
                                            "name": "geometry"
                                          },
                                          "computed": false
                                        }
                                      }
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "LogicalExpression",
                                      "start": 14639,
                                      "end": 14729,
                                      "loc": {
                                        "start": {
                                          "line": 471,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 471,
                                          "column": 118
                                        }
                                      },
                                      "left": {
                                        "type": "BinaryExpression",
                                        "start": 14639,
                                        "end": 14679,
                                        "loc": {
                                          "start": {
                                            "line": 471,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 471,
                                            "column": 68
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 14639,
                                          "end": 14653,
                                          "loc": {
                                            "start": {
                                              "line": 471,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 471,
                                              "column": 42
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 14639,
                                            "end": 14644,
                                            "loc": {
                                              "start": {
                                                "line": 471,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 471,
                                                "column": 33
                                              }
                                            },
                                            "name": "child"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 14645,
                                            "end": 14653,
                                            "loc": {
                                              "start": {
                                                "line": 471,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 471,
                                                "column": 42
                                              }
                                            },
                                            "name": "geometry"
                                          },
                                          "computed": false
                                        },
                                        "operator": "instanceof",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 14665,
                                          "end": 14679,
                                          "loc": {
                                            "start": {
                                              "line": 471,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 471,
                                              "column": 68
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 14665,
                                            "end": 14670,
                                            "loc": {
                                              "start": {
                                                "line": 471,
                                                "column": 54
                                              },
                                              "end": {
                                                "line": 471,
                                                "column": 59
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 14671,
                                            "end": 14679,
                                            "loc": {
                                              "start": {
                                                "line": 471,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 471,
                                                "column": 68
                                              }
                                            },
                                            "name": "Geometry"
                                          },
                                          "computed": false
                                        }
                                      },
                                      "operator": "||",
                                      "right": {
                                        "type": "BinaryExpression",
                                        "start": 14683,
                                        "end": 14729,
                                        "loc": {
                                          "start": {
                                            "line": 471,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 471,
                                            "column": 118
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 14683,
                                          "end": 14697,
                                          "loc": {
                                            "start": {
                                              "line": 471,
                                              "column": 72
                                            },
                                            "end": {
                                              "line": 471,
                                              "column": 86
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 14683,
                                            "end": 14688,
                                            "loc": {
                                              "start": {
                                                "line": 471,
                                                "column": 72
                                              },
                                              "end": {
                                                "line": 471,
                                                "column": 77
                                              }
                                            },
                                            "name": "child"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 14689,
                                            "end": 14697,
                                            "loc": {
                                              "start": {
                                                "line": 471,
                                                "column": 78
                                              },
                                              "end": {
                                                "line": 471,
                                                "column": 86
                                              }
                                            },
                                            "name": "geometry"
                                          },
                                          "computed": false
                                        },
                                        "operator": "instanceof",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 14709,
                                          "end": 14729,
                                          "loc": {
                                            "start": {
                                              "line": 471,
                                              "column": 98
                                            },
                                            "end": {
                                              "line": 471,
                                              "column": 118
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 14709,
                                            "end": 14714,
                                            "loc": {
                                              "start": {
                                                "line": 471,
                                                "column": 98
                                              },
                                              "end": {
                                                "line": 471,
                                                "column": 103
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 14715,
                                            "end": 14729,
                                            "loc": {
                                              "start": {
                                                "line": 471,
                                                "column": 104
                                              },
                                              "end": {
                                                "line": 471,
                                                "column": 118
                                              }
                                            },
                                            "name": "BufferGeometry"
                                          },
                                          "computed": false
                                        }
                                      },
                                      "parenthesizedExpression": true
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 14732,
                                    "end": 14925,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 121
                                      },
                                      "end": {
                                        "line": 475,
                                        "column": 4
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 14738,
                                        "end": 14835,
                                        "loc": {
                                          "start": {
                                            "line": 472,
                                            "column": 4
                                          },
                                          "end": {
                                            "line": 472,
                                            "column": 101
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 14738,
                                          "end": 14834,
                                          "loc": {
                                            "start": {
                                              "line": 472,
                                              "column": 4
                                            },
                                            "end": {
                                              "line": 472,
                                              "column": 100
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 14738,
                                            "end": 14764,
                                            "loc": {
                                              "start": {
                                                "line": 472,
                                                "column": 4
                                              },
                                              "end": {
                                                "line": 472,
                                                "column": 30
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 14738,
                                              "end": 14752,
                                              "loc": {
                                                "start": {
                                                  "line": 472,
                                                  "column": 4
                                                },
                                                "end": {
                                                  "line": 472,
                                                  "column": 18
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 14738,
                                                "end": 14743,
                                                "loc": {
                                                  "start": {
                                                    "line": 472,
                                                    "column": 4
                                                  },
                                                  "end": {
                                                    "line": 472,
                                                    "column": 9
                                                  }
                                                },
                                                "name": "child"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14744,
                                                "end": 14752,
                                                "loc": {
                                                  "start": {
                                                    "line": 472,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 472,
                                                    "column": 18
                                                  }
                                                },
                                                "name": "geometry"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 14753,
                                              "end": 14764,
                                              "loc": {
                                                "start": {
                                                  "line": 472,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 472,
                                                  "column": 30
                                                }
                                              },
                                              "name": "applyMatrix"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "CallExpression",
                                              "start": 14765,
                                              "end": 14833,
                                              "loc": {
                                                "start": {
                                                  "line": 472,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 472,
                                                  "column": 99
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 14765,
                                                "end": 14800,
                                                "loc": {
                                                  "start": {
                                                    "line": 472,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 472,
                                                    "column": 66
                                                  }
                                                },
                                                "object": {
                                                  "type": "NewExpression",
                                                  "start": 14765,
                                                  "end": 14784,
                                                  "loc": {
                                                    "start": {
                                                      "line": 472,
                                                      "column": 31
                                                    },
                                                    "end": {
                                                      "line": 472,
                                                      "column": 50
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 14769,
                                                    "end": 14782,
                                                    "loc": {
                                                      "start": {
                                                        "line": 472,
                                                        "column": 35
                                                      },
                                                      "end": {
                                                        "line": 472,
                                                        "column": 48
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 14769,
                                                      "end": 14774,
                                                      "loc": {
                                                        "start": {
                                                          "line": 472,
                                                          "column": 35
                                                        },
                                                        "end": {
                                                          "line": 472,
                                                          "column": 40
                                                        }
                                                      },
                                                      "name": "THREE"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 14775,
                                                      "end": 14782,
                                                      "loc": {
                                                        "start": {
                                                          "line": 472,
                                                          "column": 41
                                                        },
                                                        "end": {
                                                          "line": 472,
                                                          "column": 48
                                                        }
                                                      },
                                                      "name": "Matrix4"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": []
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 14785,
                                                  "end": 14800,
                                                  "loc": {
                                                    "start": {
                                                      "line": 472,
                                                      "column": 51
                                                    },
                                                    "end": {
                                                      "line": 472,
                                                      "column": 66
                                                    }
                                                  },
                                                  "name": "makeTranslation"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "UnaryExpression",
                                                  "start": 14801,
                                                  "end": 14810,
                                                  "loc": {
                                                    "start": {
                                                      "line": 472,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 472,
                                                      "column": 76
                                                    }
                                                  },
                                                  "operator": "-",
                                                  "prefix": true,
                                                  "argument": {
                                                    "type": "MemberExpression",
                                                    "start": 14802,
                                                    "end": 14810,
                                                    "loc": {
                                                      "start": {
                                                        "line": 472,
                                                        "column": 68
                                                      },
                                                      "end": {
                                                        "line": 472,
                                                        "column": 76
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 14802,
                                                      "end": 14808,
                                                      "loc": {
                                                        "start": {
                                                          "line": 472,
                                                          "column": 68
                                                        },
                                                        "end": {
                                                          "line": 472,
                                                          "column": 74
                                                        }
                                                      },
                                                      "name": "center"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 14809,
                                                      "end": 14810,
                                                      "loc": {
                                                        "start": {
                                                          "line": 472,
                                                          "column": 75
                                                        },
                                                        "end": {
                                                          "line": 472,
                                                          "column": 76
                                                        }
                                                      },
                                                      "name": "x"
                                                    },
                                                    "computed": false
                                                  }
                                                },
                                                {
                                                  "type": "UnaryExpression",
                                                  "start": 14812,
                                                  "end": 14821,
                                                  "loc": {
                                                    "start": {
                                                      "line": 472,
                                                      "column": 78
                                                    },
                                                    "end": {
                                                      "line": 472,
                                                      "column": 87
                                                    }
                                                  },
                                                  "operator": "-",
                                                  "prefix": true,
                                                  "argument": {
                                                    "type": "MemberExpression",
                                                    "start": 14813,
                                                    "end": 14821,
                                                    "loc": {
                                                      "start": {
                                                        "line": 472,
                                                        "column": 79
                                                      },
                                                      "end": {
                                                        "line": 472,
                                                        "column": 87
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 14813,
                                                      "end": 14819,
                                                      "loc": {
                                                        "start": {
                                                          "line": 472,
                                                          "column": 79
                                                        },
                                                        "end": {
                                                          "line": 472,
                                                          "column": 85
                                                        }
                                                      },
                                                      "name": "center"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 14820,
                                                      "end": 14821,
                                                      "loc": {
                                                        "start": {
                                                          "line": 472,
                                                          "column": 86
                                                        },
                                                        "end": {
                                                          "line": 472,
                                                          "column": 87
                                                        }
                                                      },
                                                      "name": "y"
                                                    },
                                                    "computed": false
                                                  }
                                                },
                                                {
                                                  "type": "UnaryExpression",
                                                  "start": 14823,
                                                  "end": 14832,
                                                  "loc": {
                                                    "start": {
                                                      "line": 472,
                                                      "column": 89
                                                    },
                                                    "end": {
                                                      "line": 472,
                                                      "column": 98
                                                    }
                                                  },
                                                  "operator": "-",
                                                  "prefix": true,
                                                  "argument": {
                                                    "type": "MemberExpression",
                                                    "start": 14824,
                                                    "end": 14832,
                                                    "loc": {
                                                      "start": {
                                                        "line": 472,
                                                        "column": 90
                                                      },
                                                      "end": {
                                                        "line": 472,
                                                        "column": 98
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 14824,
                                                      "end": 14830,
                                                      "loc": {
                                                        "start": {
                                                          "line": 472,
                                                          "column": 90
                                                        },
                                                        "end": {
                                                          "line": 472,
                                                          "column": 96
                                                        }
                                                      },
                                                      "name": "center"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 14831,
                                                      "end": 14832,
                                                      "loc": {
                                                        "start": {
                                                          "line": 472,
                                                          "column": 97
                                                        },
                                                        "end": {
                                                          "line": 472,
                                                          "column": 98
                                                        }
                                                      },
                                                      "name": "z"
                                                    },
                                                    "computed": false
                                                  }
                                                }
                                              ]
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 14840,
                                        "end": 14876,
                                        "loc": {
                                          "start": {
                                            "line": 473,
                                            "column": 4
                                          },
                                          "end": {
                                            "line": 473,
                                            "column": 40
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 14840,
                                          "end": 14875,
                                          "loc": {
                                            "start": {
                                              "line": 473,
                                              "column": 4
                                            },
                                            "end": {
                                              "line": 473,
                                              "column": 39
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 14840,
                                            "end": 14873,
                                            "loc": {
                                              "start": {
                                                "line": 473,
                                                "column": 4
                                              },
                                              "end": {
                                                "line": 473,
                                                "column": 37
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 14840,
                                              "end": 14854,
                                              "loc": {
                                                "start": {
                                                  "line": 473,
                                                  "column": 4
                                                },
                                                "end": {
                                                  "line": 473,
                                                  "column": 18
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 14840,
                                                "end": 14845,
                                                "loc": {
                                                  "start": {
                                                    "line": 473,
                                                    "column": 4
                                                  },
                                                  "end": {
                                                    "line": 473,
                                                    "column": 9
                                                  }
                                                },
                                                "name": "child"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14846,
                                                "end": 14854,
                                                "loc": {
                                                  "start": {
                                                    "line": 473,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 473,
                                                    "column": 18
                                                  }
                                                },
                                                "name": "geometry"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 14855,
                                              "end": 14873,
                                              "loc": {
                                                "start": {
                                                  "line": 473,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 473,
                                                  "column": 37
                                                }
                                              },
                                              "name": "computeBoundingBox"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 14881,
                                        "end": 14920,
                                        "loc": {
                                          "start": {
                                            "line": 474,
                                            "column": 4
                                          },
                                          "end": {
                                            "line": 474,
                                            "column": 43
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 14881,
                                          "end": 14919,
                                          "loc": {
                                            "start": {
                                              "line": 474,
                                              "column": 4
                                            },
                                            "end": {
                                              "line": 474,
                                              "column": 42
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 14881,
                                            "end": 14917,
                                            "loc": {
                                              "start": {
                                                "line": 474,
                                                "column": 4
                                              },
                                              "end": {
                                                "line": 474,
                                                "column": 40
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 14881,
                                              "end": 14895,
                                              "loc": {
                                                "start": {
                                                  "line": 474,
                                                  "column": 4
                                                },
                                                "end": {
                                                  "line": 474,
                                                  "column": 18
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 14881,
                                                "end": 14886,
                                                "loc": {
                                                  "start": {
                                                    "line": 474,
                                                    "column": 4
                                                  },
                                                  "end": {
                                                    "line": 474,
                                                    "column": 9
                                                  }
                                                },
                                                "name": "child"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14887,
                                                "end": 14895,
                                                "loc": {
                                                  "start": {
                                                    "line": 474,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 474,
                                                    "column": 18
                                                  }
                                                },
                                                "name": "geometry"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 14896,
                                              "end": 14917,
                                              "loc": {
                                                "start": {
                                                  "line": 474,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 474,
                                                  "column": 40
                                                }
                                              },
                                              "name": "computeBoundingSphere"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        }
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 14936,
                "end": 14948,
                "loc": {
                  "start": {
                    "line": 478,
                    "column": 1
                  },
                  "end": {
                    "line": 478,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 14943,
                  "end": 14947,
                  "loc": {
                    "start": {
                      "line": 478,
                      "column": 8
                    },
                    "end": {
                      "line": 478,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14952,
      "end": 15087,
      "loc": {
        "start": {
          "line": 481,
          "column": 0
        },
        "end": {
          "line": 485,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14952,
        "end": 15087,
        "loc": {
          "start": {
            "line": 481,
            "column": 0
          },
          "end": {
            "line": 485,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14952,
          "end": 14996,
          "loc": {
            "start": {
              "line": 481,
              "column": 0
            },
            "end": {
              "line": 481,
              "column": 44
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14952,
            "end": 14976,
            "loc": {
              "start": {
                "line": 481,
                "column": 0
              },
              "end": {
                "line": 481,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14952,
              "end": 14966,
              "loc": {
                "start": {
                  "line": 481,
                  "column": 0
                },
                "end": {
                  "line": 481,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14952,
                "end": 14957,
                "loc": {
                  "start": {
                    "line": 481,
                    "column": 0
                  },
                  "end": {
                    "line": 481,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14958,
                "end": 14966,
                "loc": {
                  "start": {
                    "line": 481,
                    "column": 6
                  },
                  "end": {
                    "line": 481,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 14967,
              "end": 14976,
              "loc": {
                "start": {
                  "line": 481,
                  "column": 15
                },
                "end": {
                  "line": 481,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 14977,
            "end": 14996,
            "loc": {
              "start": {
                "line": 481,
                "column": 25
              },
              "end": {
                "line": 481,
                "column": 44
              }
            },
            "name": "centerChildGeometry"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 14999,
          "end": 15087,
          "loc": {
            "start": {
              "line": 481,
              "column": 47
            },
            "end": {
              "line": 485,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 14977,
            "end": 14996,
            "loc": {
              "start": {
                "line": 481,
                "column": 25
              },
              "end": {
                "line": 481,
                "column": 44
              }
            },
            "name": "centerChildGeometry"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 15010,
            "end": 15087,
            "loc": {
              "start": {
                "line": 481,
                "column": 58
              },
              "end": {
                "line": 485,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ForOfStatement",
                "start": 15013,
                "end": 15071,
                "loc": {
                  "start": {
                    "line": 482,
                    "column": 1
                  },
                  "end": {
                    "line": 483,
                    "column": 25
                  }
                },
                "left": {
                  "type": "VariableDeclaration",
                  "start": 15018,
                  "end": 15027,
                  "loc": {
                    "start": {
                      "line": 482,
                      "column": 6
                    },
                    "end": {
                      "line": 482,
                      "column": 15
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 15022,
                      "end": 15027,
                      "loc": {
                        "start": {
                          "line": 482,
                          "column": 10
                        },
                        "end": {
                          "line": 482,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 15022,
                        "end": 15027,
                        "loc": {
                          "start": {
                            "line": 482,
                            "column": 10
                          },
                          "end": {
                            "line": 482,
                            "column": 15
                          }
                        },
                        "name": "child"
                      },
                      "init": null
                    }
                  ],
                  "kind": "let"
                },
                "right": {
                  "type": "MemberExpression",
                  "start": 15031,
                  "end": 15044,
                  "loc": {
                    "start": {
                      "line": 482,
                      "column": 19
                    },
                    "end": {
                      "line": 482,
                      "column": 32
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 15031,
                    "end": 15035,
                    "loc": {
                      "start": {
                        "line": 482,
                        "column": 19
                      },
                      "end": {
                        "line": 482,
                        "column": 23
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 15036,
                    "end": 15044,
                    "loc": {
                      "start": {
                        "line": 482,
                        "column": 24
                      },
                      "end": {
                        "line": 482,
                        "column": 32
                      }
                    },
                    "name": "children"
                  },
                  "computed": false
                },
                "body": {
                  "type": "ExpressionStatement",
                  "start": 15048,
                  "end": 15071,
                  "loc": {
                    "start": {
                      "line": 483,
                      "column": 2
                    },
                    "end": {
                      "line": 483,
                      "column": 25
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 15048,
                    "end": 15070,
                    "loc": {
                      "start": {
                        "line": 483,
                        "column": 2
                      },
                      "end": {
                        "line": 483,
                        "column": 24
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 15048,
                      "end": 15068,
                      "loc": {
                        "start": {
                          "line": 483,
                          "column": 2
                        },
                        "end": {
                          "line": 483,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 15048,
                        "end": 15053,
                        "loc": {
                          "start": {
                            "line": 483,
                            "column": 2
                          },
                          "end": {
                            "line": 483,
                            "column": 7
                          }
                        },
                        "name": "child"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 15054,
                        "end": 15068,
                        "loc": {
                          "start": {
                            "line": 483,
                            "column": 8
                          },
                          "end": {
                            "line": 483,
                            "column": 22
                          }
                        },
                        "name": "centerGeometry"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "start": 15073,
                "end": 15085,
                "loc": {
                  "start": {
                    "line": 484,
                    "column": 1
                  },
                  "end": {
                    "line": 484,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 15080,
                  "end": 15084,
                  "loc": {
                    "start": {
                      "line": 484,
                      "column": 8
                    },
                    "end": {
                      "line": 484,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15089,
      "end": 15197,
      "loc": {
        "start": {
          "line": 487,
          "column": 0
        },
        "end": {
          "line": 489,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15089,
        "end": 15197,
        "loc": {
          "start": {
            "line": 487,
            "column": 0
          },
          "end": {
            "line": 489,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15089,
          "end": 15130,
          "loc": {
            "start": {
              "line": 487,
              "column": 0
            },
            "end": {
              "line": 487,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15089,
            "end": 15113,
            "loc": {
              "start": {
                "line": 487,
                "column": 0
              },
              "end": {
                "line": 487,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15089,
              "end": 15103,
              "loc": {
                "start": {
                  "line": 487,
                  "column": 0
                },
                "end": {
                  "line": 487,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15089,
                "end": 15094,
                "loc": {
                  "start": {
                    "line": 487,
                    "column": 0
                  },
                  "end": {
                    "line": 487,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15095,
                "end": 15103,
                "loc": {
                  "start": {
                    "line": 487,
                    "column": 6
                  },
                  "end": {
                    "line": 487,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15104,
              "end": 15113,
              "loc": {
                "start": {
                  "line": 487,
                  "column": 15
                },
                "end": {
                  "line": 487,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15114,
            "end": 15130,
            "loc": {
              "start": {
                "line": 487,
                "column": 25
              },
              "end": {
                "line": 487,
                "column": 41
              }
            },
            "name": "addEventListener"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15133,
          "end": 15197,
          "loc": {
            "start": {
              "line": 487,
              "column": 44
            },
            "end": {
              "line": 489,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15114,
            "end": 15130,
            "loc": {
              "start": {
                "line": 487,
                "column": 25
              },
              "end": {
                "line": 487,
                "column": 41
              }
            },
            "name": "addEventListener"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 15142,
              "end": 15146,
              "loc": {
                "start": {
                  "line": 487,
                  "column": 53
                },
                "end": {
                  "line": 487,
                  "column": 57
                }
              },
              "name": "type"
            },
            {
              "type": "Identifier",
              "start": 15148,
              "end": 15156,
              "loc": {
                "start": {
                  "line": 487,
                  "column": 59
                },
                "end": {
                  "line": 487,
                  "column": 67
                }
              },
              "name": "listener"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 15158,
            "end": 15197,
            "loc": {
              "start": {
                "line": 487,
                "column": 69
              },
              "end": {
                "line": 489,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 15164,
                "end": 15195,
                "loc": {
                  "start": {
                    "line": 488,
                    "column": 4
                  },
                  "end": {
                    "line": 488,
                    "column": 35
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 15171,
                  "end": 15194,
                  "loc": {
                    "start": {
                      "line": 488,
                      "column": 11
                    },
                    "end": {
                      "line": 488,
                      "column": 34
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 15171,
                    "end": 15178,
                    "loc": {
                      "start": {
                        "line": 488,
                        "column": 11
                      },
                      "end": {
                        "line": 488,
                        "column": 18
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 15171,
                      "end": 15175,
                      "loc": {
                        "start": {
                          "line": 488,
                          "column": 11
                        },
                        "end": {
                          "line": 488,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 15176,
                      "end": 15178,
                      "loc": {
                        "start": {
                          "line": 488,
                          "column": 16
                        },
                        "end": {
                          "line": 488,
                          "column": 18
                        }
                      },
                      "name": "on"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 15179,
                      "end": 15183,
                      "loc": {
                        "start": {
                          "line": 488,
                          "column": 19
                        },
                        "end": {
                          "line": 488,
                          "column": 23
                        }
                      },
                      "name": "type"
                    },
                    {
                      "type": "Identifier",
                      "start": 15185,
                      "end": 15193,
                      "loc": {
                        "start": {
                          "line": 488,
                          "column": 25
                        },
                        "end": {
                          "line": 488,
                          "column": 33
                        }
                      },
                      "name": "listener"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15199,
      "end": 15316,
      "loc": {
        "start": {
          "line": 491,
          "column": 0
        },
        "end": {
          "line": 493,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15199,
        "end": 15316,
        "loc": {
          "start": {
            "line": 491,
            "column": 0
          },
          "end": {
            "line": 493,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15199,
          "end": 15240,
          "loc": {
            "start": {
              "line": 491,
              "column": 0
            },
            "end": {
              "line": 491,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15199,
            "end": 15223,
            "loc": {
              "start": {
                "line": 491,
                "column": 0
              },
              "end": {
                "line": 491,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15199,
              "end": 15213,
              "loc": {
                "start": {
                  "line": 491,
                  "column": 0
                },
                "end": {
                  "line": 491,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15199,
                "end": 15204,
                "loc": {
                  "start": {
                    "line": 491,
                    "column": 0
                  },
                  "end": {
                    "line": 491,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15205,
                "end": 15213,
                "loc": {
                  "start": {
                    "line": 491,
                    "column": 6
                  },
                  "end": {
                    "line": 491,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15214,
              "end": 15223,
              "loc": {
                "start": {
                  "line": 491,
                  "column": 15
                },
                "end": {
                  "line": 491,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15224,
            "end": 15240,
            "loc": {
              "start": {
                "line": 491,
                "column": 25
              },
              "end": {
                "line": 491,
                "column": 41
              }
            },
            "name": "hasEventListener"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15243,
          "end": 15316,
          "loc": {
            "start": {
              "line": 491,
              "column": 44
            },
            "end": {
              "line": 493,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15224,
            "end": 15240,
            "loc": {
              "start": {
                "line": 491,
                "column": 25
              },
              "end": {
                "line": 491,
                "column": 41
              }
            },
            "name": "hasEventListener"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 15252,
              "end": 15256,
              "loc": {
                "start": {
                  "line": 491,
                  "column": 53
                },
                "end": {
                  "line": 491,
                  "column": 57
                }
              },
              "name": "type"
            },
            {
              "type": "Identifier",
              "start": 15258,
              "end": 15266,
              "loc": {
                "start": {
                  "line": 491,
                  "column": 59
                },
                "end": {
                  "line": 491,
                  "column": 67
                }
              },
              "name": "listener"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 15268,
            "end": 15316,
            "loc": {
              "start": {
                "line": 491,
                "column": 69
              },
              "end": {
                "line": 493,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 15274,
                "end": 15314,
                "loc": {
                  "start": {
                    "line": 492,
                    "column": 4
                  },
                  "end": {
                    "line": 492,
                    "column": 44
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 15281,
                  "end": 15313,
                  "loc": {
                    "start": {
                      "line": 492,
                      "column": 11
                    },
                    "end": {
                      "line": 492,
                      "column": 43
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 15281,
                    "end": 15297,
                    "loc": {
                      "start": {
                        "line": 492,
                        "column": 11
                      },
                      "end": {
                        "line": 492,
                        "column": 27
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 15281,
                      "end": 15285,
                      "loc": {
                        "start": {
                          "line": 492,
                          "column": 11
                        },
                        "end": {
                          "line": 492,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 15286,
                      "end": 15297,
                      "loc": {
                        "start": {
                          "line": 492,
                          "column": 16
                        },
                        "end": {
                          "line": 492,
                          "column": 27
                        }
                      },
                      "name": "hasListener"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 15298,
                      "end": 15302,
                      "loc": {
                        "start": {
                          "line": 492,
                          "column": 28
                        },
                        "end": {
                          "line": 492,
                          "column": 32
                        }
                      },
                      "name": "type"
                    },
                    {
                      "type": "Identifier",
                      "start": 15304,
                      "end": 15312,
                      "loc": {
                        "start": {
                          "line": 492,
                          "column": 34
                        },
                        "end": {
                          "line": 492,
                          "column": 42
                        }
                      },
                      "name": "listener"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15318,
      "end": 15441,
      "loc": {
        "start": {
          "line": 495,
          "column": 0
        },
        "end": {
          "line": 497,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15318,
        "end": 15441,
        "loc": {
          "start": {
            "line": 495,
            "column": 0
          },
          "end": {
            "line": 497,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15318,
          "end": 15362,
          "loc": {
            "start": {
              "line": 495,
              "column": 0
            },
            "end": {
              "line": 495,
              "column": 44
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15318,
            "end": 15342,
            "loc": {
              "start": {
                "line": 495,
                "column": 0
              },
              "end": {
                "line": 495,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15318,
              "end": 15332,
              "loc": {
                "start": {
                  "line": 495,
                  "column": 0
                },
                "end": {
                  "line": 495,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15318,
                "end": 15323,
                "loc": {
                  "start": {
                    "line": 495,
                    "column": 0
                  },
                  "end": {
                    "line": 495,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15324,
                "end": 15332,
                "loc": {
                  "start": {
                    "line": 495,
                    "column": 6
                  },
                  "end": {
                    "line": 495,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15333,
              "end": 15342,
              "loc": {
                "start": {
                  "line": 495,
                  "column": 15
                },
                "end": {
                  "line": 495,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15343,
            "end": 15362,
            "loc": {
              "start": {
                "line": 495,
                "column": 25
              },
              "end": {
                "line": 495,
                "column": 44
              }
            },
            "name": "removeEventListener"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15365,
          "end": 15441,
          "loc": {
            "start": {
              "line": 495,
              "column": 47
            },
            "end": {
              "line": 497,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15343,
            "end": 15362,
            "loc": {
              "start": {
                "line": 495,
                "column": 25
              },
              "end": {
                "line": 495,
                "column": 44
              }
            },
            "name": "removeEventListener"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 15374,
              "end": 15378,
              "loc": {
                "start": {
                  "line": 495,
                  "column": 56
                },
                "end": {
                  "line": 495,
                  "column": 60
                }
              },
              "name": "type"
            },
            {
              "type": "Identifier",
              "start": 15380,
              "end": 15388,
              "loc": {
                "start": {
                  "line": 495,
                  "column": 62
                },
                "end": {
                  "line": 495,
                  "column": 70
                }
              },
              "name": "listener"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 15390,
            "end": 15441,
            "loc": {
              "start": {
                "line": 495,
                "column": 72
              },
              "end": {
                "line": 497,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 15396,
                "end": 15439,
                "loc": {
                  "start": {
                    "line": 496,
                    "column": 4
                  },
                  "end": {
                    "line": 496,
                    "column": 47
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 15403,
                  "end": 15438,
                  "loc": {
                    "start": {
                      "line": 496,
                      "column": 11
                    },
                    "end": {
                      "line": 496,
                      "column": 46
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 15403,
                    "end": 15422,
                    "loc": {
                      "start": {
                        "line": 496,
                        "column": 11
                      },
                      "end": {
                        "line": 496,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 15403,
                      "end": 15407,
                      "loc": {
                        "start": {
                          "line": 496,
                          "column": 11
                        },
                        "end": {
                          "line": 496,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 15408,
                      "end": 15422,
                      "loc": {
                        "start": {
                          "line": 496,
                          "column": 16
                        },
                        "end": {
                          "line": 496,
                          "column": 30
                        }
                      },
                      "name": "removeListener"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 15423,
                      "end": 15427,
                      "loc": {
                        "start": {
                          "line": 496,
                          "column": 31
                        },
                        "end": {
                          "line": 496,
                          "column": 35
                        }
                      },
                      "name": "type"
                    },
                    {
                      "type": "Identifier",
                      "start": 15429,
                      "end": 15437,
                      "loc": {
                        "start": {
                          "line": 496,
                          "column": 37
                        },
                        "end": {
                          "line": 496,
                          "column": 45
                        }
                      },
                      "name": "listener"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15443,
      "end": 15550,
      "loc": {
        "start": {
          "line": 499,
          "column": 0
        },
        "end": {
          "line": 501,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15443,
        "end": 15550,
        "loc": {
          "start": {
            "line": 499,
            "column": 0
          },
          "end": {
            "line": 501,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15443,
          "end": 15481,
          "loc": {
            "start": {
              "line": 499,
              "column": 0
            },
            "end": {
              "line": 499,
              "column": 38
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15443,
            "end": 15467,
            "loc": {
              "start": {
                "line": 499,
                "column": 0
              },
              "end": {
                "line": 499,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15443,
              "end": 15457,
              "loc": {
                "start": {
                  "line": 499,
                  "column": 0
                },
                "end": {
                  "line": 499,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15443,
                "end": 15448,
                "loc": {
                  "start": {
                    "line": 499,
                    "column": 0
                  },
                  "end": {
                    "line": 499,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15449,
                "end": 15457,
                "loc": {
                  "start": {
                    "line": 499,
                    "column": 6
                  },
                  "end": {
                    "line": 499,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15458,
              "end": 15467,
              "loc": {
                "start": {
                  "line": 499,
                  "column": 15
                },
                "end": {
                  "line": 499,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15468,
            "end": 15481,
            "loc": {
              "start": {
                "line": 499,
                "column": 25
              },
              "end": {
                "line": 499,
                "column": 38
              }
            },
            "name": "dispatchEvent"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15484,
          "end": 15550,
          "loc": {
            "start": {
              "line": 499,
              "column": 41
            },
            "end": {
              "line": 501,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15468,
            "end": 15481,
            "loc": {
              "start": {
                "line": 499,
                "column": 25
              },
              "end": {
                "line": 499,
                "column": 38
              }
            },
            "name": "dispatchEvent"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 15493,
              "end": 15498,
              "loc": {
                "start": {
                  "line": 499,
                  "column": 50
                },
                "end": {
                  "line": 499,
                  "column": 55
                }
              },
              "name": "event"
            },
            {
              "type": "RestElement",
              "start": 15500,
              "end": 15507,
              "loc": {
                "start": {
                  "line": 499,
                  "column": 57
                },
                "end": {
                  "line": 499,
                  "column": 64
                }
              },
              "argument": {
                "type": "Identifier",
                "start": 15503,
                "end": 15507,
                "loc": {
                  "start": {
                    "line": 499,
                    "column": 60
                  },
                  "end": {
                    "line": 499,
                    "column": 64
                  }
                },
                "name": "args"
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 15509,
            "end": 15550,
            "loc": {
              "start": {
                "line": 499,
                "column": 66
              },
              "end": {
                "line": 501,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 15515,
                "end": 15548,
                "loc": {
                  "start": {
                    "line": 500,
                    "column": 4
                  },
                  "end": {
                    "line": 500,
                    "column": 37
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 15522,
                  "end": 15547,
                  "loc": {
                    "start": {
                      "line": 500,
                      "column": 11
                    },
                    "end": {
                      "line": 500,
                      "column": 36
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 15522,
                    "end": 15531,
                    "loc": {
                      "start": {
                        "line": 500,
                        "column": 11
                      },
                      "end": {
                        "line": 500,
                        "column": 20
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 15522,
                      "end": 15526,
                      "loc": {
                        "start": {
                          "line": 500,
                          "column": 11
                        },
                        "end": {
                          "line": 500,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 15527,
                      "end": 15531,
                      "loc": {
                        "start": {
                          "line": 500,
                          "column": 16
                        },
                        "end": {
                          "line": 500,
                          "column": 20
                        }
                      },
                      "name": "emit"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 15532,
                      "end": 15537,
                      "loc": {
                        "start": {
                          "line": 500,
                          "column": 21
                        },
                        "end": {
                          "line": 500,
                          "column": 26
                        }
                      },
                      "name": "event"
                    },
                    {
                      "type": "SpreadElement",
                      "start": 15539,
                      "end": 15546,
                      "loc": {
                        "start": {
                          "line": 500,
                          "column": 28
                        },
                        "end": {
                          "line": 500,
                          "column": 35
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 15542,
                        "end": 15546,
                        "loc": {
                          "start": {
                            "line": 500,
                            "column": 31
                          },
                          "end": {
                            "line": 500,
                            "column": 35
                          }
                        },
                        "name": "args"
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    }
  ]
}