{
  "type": "Program",
  "start": 0,
  "end": 17492,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 549,
      "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": 28,
      "end": 68,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 40
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 35,
          "end": 43,
          "loc": {
            "start": {
              "line": 2,
              "column": 7
            },
            "end": {
              "line": 2,
              "column": 15
            }
          },
          "local": {
            "type": "Identifier",
            "start": 35,
            "end": 43,
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 15
              }
            },
            "name": "Defaults"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 49,
        "end": 67,
        "loc": {
          "start": {
            "line": 2,
            "column": 21
          },
          "end": {
            "line": 2,
            "column": 39
          }
        },
        "value": "../core/defaults",
        "rawValue": "../core/defaults",
        "raw": "'../core/defaults'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 70,
      "end": 106,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 36
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 77,
          "end": 83,
          "loc": {
            "start": {
              "line": 3,
              "column": 7
            },
            "end": {
              "line": 3,
              "column": 13
            }
          },
          "local": {
            "type": "Identifier",
            "start": 77,
            "end": 83,
            "loc": {
              "start": {
                "line": 3,
                "column": 7
              },
              "end": {
                "line": 3,
                "column": 13
              }
            },
            "name": "Events"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 89,
        "end": 105,
        "loc": {
          "start": {
            "line": 3,
            "column": 19
          },
          "end": {
            "line": 3,
            "column": 35
          }
        },
        "value": "../core/events",
        "rawValue": "../core/events",
        "raw": "'../core/events'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 108,
      "end": 147,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 39
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 115,
          "end": 120,
          "loc": {
            "start": {
              "line": 4,
              "column": 7
            },
            "end": {
              "line": 4,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 115,
            "end": 120,
            "loc": {
              "start": {
                "line": 4,
                "column": 7
              },
              "end": {
                "line": 4,
                "column": 12
              }
            },
            "name": "Tween"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 126,
        "end": 146,
        "loc": {
          "start": {
            "line": 4,
            "column": 18
          },
          "end": {
            "line": 4,
            "column": 38
          }
        },
        "value": "../animation/tween",
        "rawValue": "../animation/tween",
        "raw": "'../animation/tween'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 149,
      "end": 192,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 5,
          "column": 43
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 156,
          "end": 165,
          "loc": {
            "start": {
              "line": 5,
              "column": 7
            },
            "end": {
              "line": 5,
              "column": 16
            }
          },
          "local": {
            "type": "Identifier",
            "start": 156,
            "end": 165,
            "loc": {
              "start": {
                "line": 5,
                "column": 7
              },
              "end": {
                "line": 5,
                "column": 16
              }
            },
            "name": "Raycaster"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 171,
        "end": 191,
        "loc": {
          "start": {
            "line": 5,
            "column": 22
          },
          "end": {
            "line": 5,
            "column": 42
          }
        },
        "value": "../three/raycaster",
        "rawValue": "../three/raycaster",
        "raw": "'../three/raycaster'"
      }
    },
    {
      "type": "ExportDefaultDeclaration",
      "start": 196,
      "end": 412,
      "loc": {
        "start": {
          "line": 7,
          "column": 0
        },
        "end": {
          "line": 13,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 211,
        "end": 412,
        "loc": {
          "start": {
            "line": 7,
            "column": 15
          },
          "end": {
            "line": 13,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 217,
          "end": 224,
          "loc": {
            "start": {
              "line": 7,
              "column": 21
            },
            "end": {
              "line": 7,
              "column": 28
            }
          },
          "name": "Object3"
        },
        "superClass": {
          "type": "MemberExpression",
          "start": 233,
          "end": 247,
          "loc": {
            "start": {
              "line": 7,
              "column": 37
            },
            "end": {
              "line": 7,
              "column": 51
            }
          },
          "object": {
            "type": "Identifier",
            "start": 233,
            "end": 238,
            "loc": {
              "start": {
                "line": 7,
                "column": 37
              },
              "end": {
                "line": 7,
                "column": 42
              }
            },
            "name": "THREE"
          },
          "property": {
            "type": "Identifier",
            "start": 239,
            "end": 247,
            "loc": {
              "start": {
                "line": 7,
                "column": 43
              },
              "end": {
                "line": 7,
                "column": 51
              }
            },
            "name": "Object3D"
          },
          "computed": false
        },
        "body": {
          "type": "ClassBody",
          "start": 248,
          "end": 412,
          "loc": {
            "start": {
              "line": 7,
              "column": 52
            },
            "end": {
              "line": 13,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 252,
              "end": 409,
              "loc": {
                "start": {
                  "line": 8,
                  "column": 1
                },
                "end": {
                  "line": 12,
                  "column": 2
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 252,
                "end": 263,
                "loc": {
                  "start": {
                    "line": 8,
                    "column": 1
                  },
                  "end": {
                    "line": 8,
                    "column": 12
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 263,
                "end": 409,
                "loc": {
                  "start": {
                    "line": 8,
                    "column": 12
                  },
                  "end": {
                    "line": 12,
                    "column": 2
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "AssignmentPattern",
                    "start": 264,
                    "end": 283,
                    "loc": {
                      "start": {
                        "line": 8,
                        "column": 13
                      },
                      "end": {
                        "line": 8,
                        "column": 32
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 264,
                      "end": 271,
                      "loc": {
                        "start": {
                          "line": 8,
                          "column": 13
                        },
                        "end": {
                          "line": 8,
                          "column": 20
                        }
                      },
                      "name": "objects"
                    },
                    "right": {
                      "type": "Identifier",
                      "start": 274,
                      "end": 283,
                      "loc": {
                        "start": {
                          "line": 8,
                          "column": 23
                        },
                        "end": {
                          "line": 8,
                          "column": 32
                        }
                      },
                      "name": "undefined"
                    }
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 285,
                    "end": 304,
                    "loc": {
                      "start": {
                        "line": 8,
                        "column": 34
                      },
                      "end": {
                        "line": 8,
                        "column": 53
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 285,
                      "end": 292,
                      "loc": {
                        "start": {
                          "line": 8,
                          "column": 34
                        },
                        "end": {
                          "line": 8,
                          "column": 41
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "Identifier",
                      "start": 295,
                      "end": 304,
                      "loc": {
                        "start": {
                          "line": 8,
                          "column": 44
                        },
                        "end": {
                          "line": 8,
                          "column": 53
                        }
                      },
                      "name": "undefined"
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 306,
                  "end": 409,
                  "loc": {
                    "start": {
                      "line": 8,
                      "column": 55
                    },
                    "end": {
                      "line": 12,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 311,
                      "end": 319,
                      "loc": {
                        "start": {
                          "line": 9,
                          "column": 2
                        },
                        "end": {
                          "line": 9,
                          "column": 10
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 311,
                        "end": 318,
                        "loc": {
                          "start": {
                            "line": 9,
                            "column": 2
                          },
                          "end": {
                            "line": 9,
                            "column": 9
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 311,
                          "end": 316,
                          "loc": {
                            "start": {
                              "line": 9,
                              "column": 2
                            },
                            "end": {
                              "line": 9,
                              "column": 7
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 329,
                      "end": 368,
                      "loc": {
                        "start": {
                          "line": 10,
                          "column": 8
                        },
                        "end": {
                          "line": 10,
                          "column": 47
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 333,
                        "end": 342,
                        "loc": {
                          "start": {
                            "line": 10,
                            "column": 12
                          },
                          "end": {
                            "line": 10,
                            "column": 21
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 334,
                          "end": 342,
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 13
                            },
                            "end": {
                              "line": 10,
                              "column": 21
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "Identifier",
                            "start": 335,
                            "end": 342,
                            "loc": {
                              "start": {
                                "line": 10,
                                "column": 14
                              },
                              "end": {
                                "line": 10,
                                "column": 21
                              }
                            },
                            "name": "options"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 344,
                        "end": 368,
                        "loc": {
                          "start": {
                            "line": 10,
                            "column": 23
                          },
                          "end": {
                            "line": 10,
                            "column": 47
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 344,
                          "end": 367,
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 23
                            },
                            "end": {
                              "line": 10,
                              "column": 46
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 344,
                            "end": 358,
                            "loc": {
                              "start": {
                                "line": 10,
                                "column": 23
                              },
                              "end": {
                                "line": 10,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 344,
                              "end": 348,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 23
                                },
                                "end": {
                                  "line": 10,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 349,
                              "end": 358,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 28
                                },
                                "end": {
                                  "line": 10,
                                  "column": 37
                                }
                              },
                              "name": "setValues"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 359,
                              "end": 366,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 38
                                },
                                "end": {
                                  "line": 10,
                                  "column": 45
                                }
                              },
                              "name": "options"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 372,
                      "end": 405,
                      "loc": {
                        "start": {
                          "line": 11,
                          "column": 2
                        },
                        "end": {
                          "line": 11,
                          "column": 35
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 376,
                        "end": 385,
                        "loc": {
                          "start": {
                            "line": 11,
                            "column": 6
                          },
                          "end": {
                            "line": 11,
                            "column": 15
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 377,
                          "end": 385,
                          "loc": {
                            "start": {
                              "line": 11,
                              "column": 7
                            },
                            "end": {
                              "line": 11,
                              "column": 15
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "Identifier",
                            "start": 378,
                            "end": 385,
                            "loc": {
                              "start": {
                                "line": 11,
                                "column": 8
                              },
                              "end": {
                                "line": 11,
                                "column": 15
                              }
                            },
                            "name": "objects"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 387,
                        "end": 405,
                        "loc": {
                          "start": {
                            "line": 11,
                            "column": 17
                          },
                          "end": {
                            "line": 11,
                            "column": 35
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 387,
                          "end": 404,
                          "loc": {
                            "start": {
                              "line": 11,
                              "column": 17
                            },
                            "end": {
                              "line": 11,
                              "column": 34
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 387,
                            "end": 395,
                            "loc": {
                              "start": {
                                "line": 11,
                                "column": 17
                              },
                              "end": {
                                "line": 11,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 387,
                              "end": 391,
                              "loc": {
                                "start": {
                                  "line": 11,
                                  "column": 17
                                },
                                "end": {
                                  "line": 11,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 392,
                              "end": 395,
                              "loc": {
                                "start": {
                                  "line": 11,
                                  "column": 22
                                },
                                "end": {
                                  "line": 11,
                                  "column": 25
                                }
                              },
                              "name": "add"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 396,
                              "end": 403,
                              "loc": {
                                "start": {
                                  "line": 11,
                                  "column": 26
                                },
                                "end": {
                                  "line": 11,
                                  "column": 33
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [],
        "trailingComments": []
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 416,
      "end": 926,
      "loc": {
        "start": {
          "line": 15,
          "column": 0
        },
        "end": {
          "line": 35,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 416,
        "end": 926,
        "loc": {
          "start": {
            "line": 15,
            "column": 0
          },
          "end": {
            "line": 35,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 416,
          "end": 437,
          "loc": {
            "start": {
              "line": 15,
              "column": 0
            },
            "end": {
              "line": 15,
              "column": 21
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 416,
            "end": 430,
            "loc": {
              "start": {
                "line": 15,
                "column": 0
              },
              "end": {
                "line": 15,
                "column": 14
              }
            },
            "object": {
              "type": "Identifier",
              "start": 416,
              "end": 421,
              "loc": {
                "start": {
                  "line": 15,
                  "column": 0
                },
                "end": {
                  "line": 15,
                  "column": 5
                }
              },
              "name": "THREE"
            },
            "property": {
              "type": "Identifier",
              "start": 422,
              "end": 430,
              "loc": {
                "start": {
                  "line": 15,
                  "column": 6
                },
                "end": {
                  "line": 15,
                  "column": 14
                }
              },
              "name": "Object3D"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 431,
            "end": 437,
            "loc": {
              "start": {
                "line": 15,
                "column": 15
              },
              "end": {
                "line": 15,
                "column": 21
              }
            },
            "name": "Events"
          },
          "computed": false
        },
        "right": {
          "type": "ObjectExpression",
          "start": 440,
          "end": 926,
          "loc": {
            "start": {
              "line": 15,
              "column": 24
            },
            "end": {
              "line": 35,
              "column": 1
            }
          },
          "properties": [
            {
              "type": "Property",
              "start": 447,
              "end": 699,
              "loc": {
                "start": {
                  "line": 16,
                  "column": 4
                },
                "end": {
                  "line": 25,
                  "column": 5
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 447,
                "end": 456,
                "loc": {
                  "start": {
                    "line": 16,
                    "column": 4
                  },
                  "end": {
                    "line": 16,
                    "column": 13
                  }
                },
                "name": "Lifecycle"
              },
              "value": {
                "type": "ObjectExpression",
                "start": 458,
                "end": 699,
                "loc": {
                  "start": {
                    "line": 16,
                    "column": 15
                  },
                  "end": {
                    "line": 25,
                    "column": 5
                  }
                },
                "properties": [
                  {
                    "type": "Property",
                    "start": 466,
                    "end": 482,
                    "loc": {
                      "start": {
                        "line": 17,
                        "column": 5
                      },
                      "end": {
                        "line": 17,
                        "column": 21
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 466,
                      "end": 472,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 5
                        },
                        "end": {
                          "line": 17,
                          "column": 11
                        }
                      },
                      "name": "Loaded"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 474,
                      "end": 482,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 13
                        },
                        "end": {
                          "line": 17,
                          "column": 21
                        }
                      },
                      "value": "Loaded",
                      "rawValue": "Loaded",
                      "raw": "'Loaded'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 490,
                    "end": 504,
                    "loc": {
                      "start": {
                        "line": 18,
                        "column": 5
                      },
                      "end": {
                        "line": 18,
                        "column": 19
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 490,
                      "end": 495,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 5
                        },
                        "end": {
                          "line": 18,
                          "column": 10
                        }
                      },
                      "name": "Added"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 497,
                      "end": 504,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 12
                        },
                        "end": {
                          "line": 18,
                          "column": 19
                        }
                      },
                      "value": "Added",
                      "rawValue": "Added",
                      "raw": "'Added'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 515,
                    "end": 537,
                    "loc": {
                      "start": {
                        "line": 19,
                        "column": 8
                      },
                      "end": {
                        "line": 19,
                        "column": 30
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 515,
                      "end": 524,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 8
                        },
                        "end": {
                          "line": 19,
                          "column": 17
                        }
                      },
                      "name": "ViewFound"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 526,
                      "end": 537,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 19
                        },
                        "end": {
                          "line": 19,
                          "column": 30
                        }
                      },
                      "value": "ViewFound",
                      "rawValue": "ViewFound",
                      "raw": "'ViewFound'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 545,
                    "end": 569,
                    "loc": {
                      "start": {
                        "line": 20,
                        "column": 5
                      },
                      "end": {
                        "line": 20,
                        "column": 29
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 545,
                      "end": 555,
                      "loc": {
                        "start": {
                          "line": 20,
                          "column": 5
                        },
                        "end": {
                          "line": 20,
                          "column": 15
                        }
                      },
                      "name": "ChildAdded"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 557,
                      "end": 569,
                      "loc": {
                        "start": {
                          "line": 20,
                          "column": 17
                        },
                        "end": {
                          "line": 20,
                          "column": 29
                        }
                      },
                      "value": "ChildAdded",
                      "rawValue": "ChildAdded",
                      "raw": "'ChildAdded'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 577,
                    "end": 595,
                    "loc": {
                      "start": {
                        "line": 21,
                        "column": 5
                      },
                      "end": {
                        "line": 21,
                        "column": 23
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 577,
                      "end": 584,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 5
                        },
                        "end": {
                          "line": 21,
                          "column": 12
                        }
                      },
                      "name": "Removed"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 586,
                      "end": 595,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 14
                        },
                        "end": {
                          "line": 21,
                          "column": 23
                        }
                      },
                      "value": "Removed",
                      "rawValue": "Removed",
                      "raw": "'Removed'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 603,
                    "end": 631,
                    "loc": {
                      "start": {
                        "line": 22,
                        "column": 5
                      },
                      "end": {
                        "line": 22,
                        "column": 33
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 603,
                      "end": 615,
                      "loc": {
                        "start": {
                          "line": 22,
                          "column": 5
                        },
                        "end": {
                          "line": 22,
                          "column": 17
                        }
                      },
                      "name": "ChildRemoved"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 617,
                      "end": 631,
                      "loc": {
                        "start": {
                          "line": 22,
                          "column": 19
                        },
                        "end": {
                          "line": 22,
                          "column": 33
                        }
                      },
                      "value": "ChildRemoved",
                      "rawValue": "ChildRemoved",
                      "raw": "'ChildRemoved'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 639,
                    "end": 661,
                    "loc": {
                      "start": {
                        "line": 23,
                        "column": 5
                      },
                      "end": {
                        "line": 23,
                        "column": 27
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 639,
                      "end": 648,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 5
                        },
                        "end": {
                          "line": 23,
                          "column": 14
                        }
                      },
                      "name": "Destroyed"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 650,
                      "end": 661,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 16
                        },
                        "end": {
                          "line": 23,
                          "column": 27
                        }
                      },
                      "value": "Destroyed",
                      "rawValue": "Destroyed",
                      "raw": "'Destroyed'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 672,
                    "end": 692,
                    "loc": {
                      "start": {
                        "line": 24,
                        "column": 8
                      },
                      "end": {
                        "line": 24,
                        "column": 28
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 672,
                      "end": 680,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 8
                        },
                        "end": {
                          "line": 24,
                          "column": 16
                        }
                      },
                      "name": "Rendered"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 682,
                      "end": 692,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 18
                        },
                        "end": {
                          "line": 24,
                          "column": 28
                        }
                      },
                      "value": "Rendered",
                      "rawValue": "Rendered",
                      "raw": "'Rendered'"
                    },
                    "kind": "init"
                  }
                ]
              },
              "kind": "init"
            },
            {
              "type": "Property",
              "start": 706,
              "end": 923,
              "loc": {
                "start": {
                  "line": 26,
                  "column": 4
                },
                "end": {
                  "line": 34,
                  "column": 5
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 706,
                "end": 717,
                "loc": {
                  "start": {
                    "line": 26,
                    "column": 4
                  },
                  "end": {
                    "line": 26,
                    "column": 15
                  }
                },
                "name": "Interaction"
              },
              "value": {
                "type": "ObjectExpression",
                "start": 719,
                "end": 923,
                "loc": {
                  "start": {
                    "line": 26,
                    "column": 17
                  },
                  "end": {
                    "line": 34,
                    "column": 5
                  }
                },
                "properties": [
                  {
                    "type": "Property",
                    "start": 730,
                    "end": 748,
                    "loc": {
                      "start": {
                        "line": 27,
                        "column": 8
                      },
                      "end": {
                        "line": 27,
                        "column": 26
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 730,
                      "end": 737,
                      "loc": {
                        "start": {
                          "line": 27,
                          "column": 8
                        },
                        "end": {
                          "line": 27,
                          "column": 15
                        }
                      },
                      "name": "Clicked"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 739,
                      "end": 748,
                      "loc": {
                        "start": {
                          "line": 27,
                          "column": 17
                        },
                        "end": {
                          "line": 27,
                          "column": 26
                        }
                      },
                      "value": "Clicked",
                      "rawValue": "Clicked",
                      "raw": "'Clicked'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 759,
                    "end": 775,
                    "loc": {
                      "start": {
                        "line": 28,
                        "column": 8
                      },
                      "end": {
                        "line": 28,
                        "column": 24
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 759,
                      "end": 765,
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 8
                        },
                        "end": {
                          "line": 28,
                          "column": 14
                        }
                      },
                      "name": "Picked"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 767,
                      "end": 775,
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 16
                        },
                        "end": {
                          "line": 28,
                          "column": 24
                        }
                      },
                      "value": "Picked",
                      "rawValue": "Picked",
                      "raw": "'Picked'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 786,
                    "end": 804,
                    "loc": {
                      "start": {
                        "line": 29,
                        "column": 8
                      },
                      "end": {
                        "line": 29,
                        "column": 26
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 786,
                      "end": 793,
                      "loc": {
                        "start": {
                          "line": 29,
                          "column": 8
                        },
                        "end": {
                          "line": 29,
                          "column": 15
                        }
                      },
                      "name": "Dropped"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 795,
                      "end": 804,
                      "loc": {
                        "start": {
                          "line": 29,
                          "column": 17
                        },
                        "end": {
                          "line": 29,
                          "column": 26
                        }
                      },
                      "value": "Dropped",
                      "rawValue": "Dropped",
                      "raw": "'Dropped'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 812,
                    "end": 830,
                    "loc": {
                      "start": {
                        "line": 30,
                        "column": 5
                      },
                      "end": {
                        "line": 30,
                        "column": 23
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 812,
                      "end": 819,
                      "loc": {
                        "start": {
                          "line": 30,
                          "column": 5
                        },
                        "end": {
                          "line": 30,
                          "column": 12
                        }
                      },
                      "name": "Dragged"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 821,
                      "end": 830,
                      "loc": {
                        "start": {
                          "line": 30,
                          "column": 14
                        },
                        "end": {
                          "line": 30,
                          "column": 23
                        }
                      },
                      "value": "Dragged",
                      "rawValue": "Dragged",
                      "raw": "'Dragged'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 838,
                    "end": 856,
                    "loc": {
                      "start": {
                        "line": 31,
                        "column": 5
                      },
                      "end": {
                        "line": 31,
                        "column": 23
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 838,
                      "end": 845,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 5
                        },
                        "end": {
                          "line": 31,
                          "column": 12
                        }
                      },
                      "name": "Hovered"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 847,
                      "end": 856,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 14
                        },
                        "end": {
                          "line": 31,
                          "column": 23
                        }
                      },
                      "value": "Hovered",
                      "rawValue": "Hovered",
                      "raw": "'Hovered'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 867,
                    "end": 889,
                    "loc": {
                      "start": {
                        "line": 32,
                        "column": 8
                      },
                      "end": {
                        "line": 32,
                        "column": 30
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 867,
                      "end": 876,
                      "loc": {
                        "start": {
                          "line": 32,
                          "column": 8
                        },
                        "end": {
                          "line": 32,
                          "column": 17
                        }
                      },
                      "name": "Unhovered"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 878,
                      "end": 889,
                      "loc": {
                        "start": {
                          "line": 32,
                          "column": 19
                        },
                        "end": {
                          "line": 32,
                          "column": 30
                        }
                      },
                      "value": "Unhovered",
                      "rawValue": "Unhovered",
                      "raw": "'Unhovered'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 900,
                    "end": 916,
                    "loc": {
                      "start": {
                        "line": 33,
                        "column": 8
                      },
                      "end": {
                        "line": 33,
                        "column": 24
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 900,
                      "end": 906,
                      "loc": {
                        "start": {
                          "line": 33,
                          "column": 8
                        },
                        "end": {
                          "line": 33,
                          "column": 14
                        }
                      },
                      "name": "Missed"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 908,
                      "end": 916,
                      "loc": {
                        "start": {
                          "line": 33,
                          "column": 16
                        },
                        "end": {
                          "line": 33,
                          "column": 24
                        }
                      },
                      "value": "Missed",
                      "rawValue": "Missed",
                      "raw": "'Missed'"
                    },
                    "kind": "init"
                  }
                ]
              },
              "kind": "init"
            }
          ]
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 930,
      "end": 974,
      "loc": {
        "start": {
          "line": 37,
          "column": 0
        },
        "end": {
          "line": 37,
          "column": 44
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 930,
        "end": 973,
        "loc": {
          "start": {
            "line": 37,
            "column": 0
          },
          "end": {
            "line": 37,
            "column": 43
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 930,
          "end": 961,
          "loc": {
            "start": {
              "line": 37,
              "column": 0
            },
            "end": {
              "line": 37,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 930,
            "end": 954,
            "loc": {
              "start": {
                "line": 37,
                "column": 0
              },
              "end": {
                "line": 37,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 930,
              "end": 944,
              "loc": {
                "start": {
                  "line": 37,
                  "column": 0
                },
                "end": {
                  "line": 37,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 930,
                "end": 935,
                "loc": {
                  "start": {
                    "line": 37,
                    "column": 0
                  },
                  "end": {
                    "line": 37,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 936,
                "end": 944,
                "loc": {
                  "start": {
                    "line": 37,
                    "column": 6
                  },
                  "end": {
                    "line": 37,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 945,
              "end": 954,
              "loc": {
                "start": {
                  "line": 37,
                  "column": 15
                },
                "end": {
                  "line": 37,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 955,
            "end": 961,
            "loc": {
              "start": {
                "line": 37,
                "column": 25
              },
              "end": {
                "line": 37,
                "column": 31
              }
            },
            "name": "canvas"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 964,
          "end": 973,
          "loc": {
            "start": {
              "line": 37,
              "column": 34
            },
            "end": {
              "line": 37,
              "column": 43
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 976,
      "end": 1018,
      "loc": {
        "start": {
          "line": 38,
          "column": 0
        },
        "end": {
          "line": 38,
          "column": 42
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 976,
        "end": 1017,
        "loc": {
          "start": {
            "line": 38,
            "column": 0
          },
          "end": {
            "line": 38,
            "column": 41
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 976,
          "end": 1005,
          "loc": {
            "start": {
              "line": 38,
              "column": 0
            },
            "end": {
              "line": 38,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 976,
            "end": 1000,
            "loc": {
              "start": {
                "line": 38,
                "column": 0
              },
              "end": {
                "line": 38,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 976,
              "end": 990,
              "loc": {
                "start": {
                  "line": 38,
                  "column": 0
                },
                "end": {
                  "line": 38,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 976,
                "end": 981,
                "loc": {
                  "start": {
                    "line": 38,
                    "column": 0
                  },
                  "end": {
                    "line": 38,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 982,
                "end": 990,
                "loc": {
                  "start": {
                    "line": 38,
                    "column": 6
                  },
                  "end": {
                    "line": 38,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 991,
              "end": 1000,
              "loc": {
                "start": {
                  "line": 38,
                  "column": 15
                },
                "end": {
                  "line": 38,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1001,
            "end": 1005,
            "loc": {
              "start": {
                "line": 38,
                "column": 25
              },
              "end": {
                "line": 38,
                "column": 29
              }
            },
            "name": "view"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 1008,
          "end": 1017,
          "loc": {
            "start": {
              "line": 38,
              "column": 32
            },
            "end": {
              "line": 38,
              "column": 41
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1020,
      "end": 1064,
      "loc": {
        "start": {
          "line": 39,
          "column": 0
        },
        "end": {
          "line": 39,
          "column": 44
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1020,
        "end": 1063,
        "loc": {
          "start": {
            "line": 39,
            "column": 0
          },
          "end": {
            "line": 39,
            "column": 43
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1020,
          "end": 1051,
          "loc": {
            "start": {
              "line": 39,
              "column": 0
            },
            "end": {
              "line": 39,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1020,
            "end": 1044,
            "loc": {
              "start": {
                "line": 39,
                "column": 0
              },
              "end": {
                "line": 39,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1020,
              "end": 1034,
              "loc": {
                "start": {
                  "line": 39,
                  "column": 0
                },
                "end": {
                  "line": 39,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1020,
                "end": 1025,
                "loc": {
                  "start": {
                    "line": 39,
                    "column": 0
                  },
                  "end": {
                    "line": 39,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1026,
                "end": 1034,
                "loc": {
                  "start": {
                    "line": 39,
                    "column": 6
                  },
                  "end": {
                    "line": 39,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1035,
              "end": 1044,
              "loc": {
                "start": {
                  "line": 39,
                  "column": 15
                },
                "end": {
                  "line": 39,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1045,
            "end": 1051,
            "loc": {
              "start": {
                "line": 39,
                "column": 25
              },
              "end": {
                "line": 39,
                "column": 31
              }
            },
            "name": "bounds"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 1054,
          "end": 1063,
          "loc": {
            "start": {
              "line": 39,
              "column": 34
            },
            "end": {
              "line": 39,
              "column": 43
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1066,
      "end": 1113,
      "loc": {
        "start": {
          "line": 40,
          "column": 0
        },
        "end": {
          "line": 40,
          "column": 47
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1066,
        "end": 1112,
        "loc": {
          "start": {
            "line": 40,
            "column": 0
          },
          "end": {
            "line": 40,
            "column": 46
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1066,
          "end": 1100,
          "loc": {
            "start": {
              "line": 40,
              "column": 0
            },
            "end": {
              "line": 40,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1066,
            "end": 1090,
            "loc": {
              "start": {
                "line": 40,
                "column": 0
              },
              "end": {
                "line": 40,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1066,
              "end": 1080,
              "loc": {
                "start": {
                  "line": 40,
                  "column": 0
                },
                "end": {
                  "line": 40,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1066,
                "end": 1071,
                "loc": {
                  "start": {
                    "line": 40,
                    "column": 0
                  },
                  "end": {
                    "line": 40,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1072,
                "end": 1080,
                "loc": {
                  "start": {
                    "line": 40,
                    "column": 6
                  },
                  "end": {
                    "line": 40,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1081,
              "end": 1090,
              "loc": {
                "start": {
                  "line": 40,
                  "column": 15
                },
                "end": {
                  "line": 40,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1091,
            "end": 1100,
            "loc": {
              "start": {
                "line": 40,
                "column": 25
              },
              "end": {
                "line": 40,
                "column": 34
              }
            },
            "name": "materials"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 1103,
          "end": 1112,
          "loc": {
            "start": {
              "line": 40,
              "column": 37
            },
            "end": {
              "line": 40,
              "column": 46
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1115,
      "end": 1169,
      "loc": {
        "start": {
          "line": 41,
          "column": 0
        },
        "end": {
          "line": 41,
          "column": 54
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1115,
        "end": 1168,
        "loc": {
          "start": {
            "line": 41,
            "column": 0
          },
          "end": {
            "line": 41,
            "column": 53
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1115,
          "end": 1161,
          "loc": {
            "start": {
              "line": 41,
              "column": 0
            },
            "end": {
              "line": 41,
              "column": 46
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1115,
            "end": 1139,
            "loc": {
              "start": {
                "line": 41,
                "column": 0
              },
              "end": {
                "line": 41,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1115,
              "end": 1129,
              "loc": {
                "start": {
                  "line": 41,
                  "column": 0
                },
                "end": {
                  "line": 41,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1115,
                "end": 1120,
                "loc": {
                  "start": {
                    "line": 41,
                    "column": 0
                  },
                  "end": {
                    "line": 41,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1121,
                "end": 1129,
                "loc": {
                  "start": {
                    "line": 41,
                    "column": 6
                  },
                  "end": {
                    "line": 41,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1130,
              "end": 1139,
              "loc": {
                "start": {
                  "line": 41,
                  "column": 15
                },
                "end": {
                  "line": 41,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1140,
            "end": 1161,
            "loc": {
              "start": {
                "line": 41,
                "column": 25
              },
              "end": {
                "line": 41,
                "column": 46
              }
            },
            "name": "updateParentMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 1164,
          "end": 1168,
          "loc": {
            "start": {
              "line": 41,
              "column": 49
            },
            "end": {
              "line": 41,
              "column": 53
            }
          },
          "value": true,
          "rawValue": true,
          "raw": "true"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1171,
      "end": 1209,
      "loc": {
        "start": {
          "line": 42,
          "column": 0
        },
        "end": {
          "line": 42,
          "column": 38
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1171,
        "end": 1208,
        "loc": {
          "start": {
            "line": 42,
            "column": 0
          },
          "end": {
            "line": 42,
            "column": 37
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1171,
          "end": 1200,
          "loc": {
            "start": {
              "line": 42,
              "column": 0
            },
            "end": {
              "line": 42,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1171,
            "end": 1195,
            "loc": {
              "start": {
                "line": 42,
                "column": 0
              },
              "end": {
                "line": 42,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1171,
              "end": 1185,
              "loc": {
                "start": {
                  "line": 42,
                  "column": 0
                },
                "end": {
                  "line": 42,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1171,
                "end": 1176,
                "loc": {
                  "start": {
                    "line": 42,
                    "column": 0
                  },
                  "end": {
                    "line": 42,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1177,
                "end": 1185,
                "loc": {
                  "start": {
                    "line": 42,
                    "column": 6
                  },
                  "end": {
                    "line": 42,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1186,
              "end": 1195,
              "loc": {
                "start": {
                  "line": 42,
                  "column": 15
                },
                "end": {
                  "line": 42,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1196,
            "end": 1200,
            "loc": {
              "start": {
                "line": 42,
                "column": 25
              },
              "end": {
                "line": 42,
                "column": 29
              }
            },
            "name": "keep"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 1203,
          "end": 1208,
          "loc": {
            "start": {
              "line": 42,
              "column": 32
            },
            "end": {
              "line": 42,
              "column": 37
            }
          },
          "value": false,
          "rawValue": false,
          "raw": "false"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1211,
      "end": 1250,
      "loc": {
        "start": {
          "line": 43,
          "column": 0
        },
        "end": {
          "line": 43,
          "column": 39
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1211,
        "end": 1249,
        "loc": {
          "start": {
            "line": 43,
            "column": 0
          },
          "end": {
            "line": 43,
            "column": 38
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1211,
          "end": 1242,
          "loc": {
            "start": {
              "line": 43,
              "column": 0
            },
            "end": {
              "line": 43,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1211,
            "end": 1235,
            "loc": {
              "start": {
                "line": 43,
                "column": 0
              },
              "end": {
                "line": 43,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1211,
              "end": 1225,
              "loc": {
                "start": {
                  "line": 43,
                  "column": 0
                },
                "end": {
                  "line": 43,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1211,
                "end": 1216,
                "loc": {
                  "start": {
                    "line": 43,
                    "column": 0
                  },
                  "end": {
                    "line": 43,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1217,
                "end": 1225,
                "loc": {
                  "start": {
                    "line": 43,
                    "column": 6
                  },
                  "end": {
                    "line": 43,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1226,
              "end": 1235,
              "loc": {
                "start": {
                  "line": 43,
                  "column": 15
                },
                "end": {
                  "line": 43,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1236,
            "end": 1242,
            "loc": {
              "start": {
                "line": 43,
                "column": 25
              },
              "end": {
                "line": 43,
                "column": 31
              }
            },
            "name": "tweens"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 1245,
          "end": 1249,
          "loc": {
            "start": {
              "line": 43,
              "column": 34
            },
            "end": {
              "line": 43,
              "column": 38
            }
          },
          "value": true,
          "rawValue": true,
          "raw": "true"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1252,
      "end": 1296,
      "loc": {
        "start": {
          "line": 44,
          "column": 0
        },
        "end": {
          "line": 44,
          "column": 44
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1252,
        "end": 1295,
        "loc": {
          "start": {
            "line": 44,
            "column": 0
          },
          "end": {
            "line": 44,
            "column": 43
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1252,
          "end": 1288,
          "loc": {
            "start": {
              "line": 44,
              "column": 0
            },
            "end": {
              "line": 44,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1252,
            "end": 1276,
            "loc": {
              "start": {
                "line": 44,
                "column": 0
              },
              "end": {
                "line": 44,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1252,
              "end": 1266,
              "loc": {
                "start": {
                  "line": 44,
                  "column": 0
                },
                "end": {
                  "line": 44,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1252,
                "end": 1257,
                "loc": {
                  "start": {
                    "line": 44,
                    "column": 0
                  },
                  "end": {
                    "line": 44,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1258,
                "end": 1266,
                "loc": {
                  "start": {
                    "line": 44,
                    "column": 6
                  },
                  "end": {
                    "line": 44,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1267,
              "end": 1276,
              "loc": {
                "start": {
                  "line": 44,
                  "column": 15
                },
                "end": {
                  "line": 44,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1277,
            "end": 1288,
            "loc": {
              "start": {
                "line": 44,
                "column": 25
              },
              "end": {
                "line": 44,
                "column": 36
              }
            },
            "name": "interactive"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 1291,
          "end": 1295,
          "loc": {
            "start": {
              "line": 44,
              "column": 39
            },
            "end": {
              "line": 44,
              "column": 43
            }
          },
          "value": true,
          "rawValue": true,
          "raw": "true"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1298,
      "end": 1347,
      "loc": {
        "start": {
          "line": 45,
          "column": 0
        },
        "end": {
          "line": 45,
          "column": 49
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1298,
        "end": 1346,
        "loc": {
          "start": {
            "line": 45,
            "column": 0
          },
          "end": {
            "line": 45,
            "column": 48
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1298,
          "end": 1334,
          "loc": {
            "start": {
              "line": 45,
              "column": 0
            },
            "end": {
              "line": 45,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1298,
            "end": 1322,
            "loc": {
              "start": {
                "line": 45,
                "column": 0
              },
              "end": {
                "line": 45,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1298,
              "end": 1312,
              "loc": {
                "start": {
                  "line": 45,
                  "column": 0
                },
                "end": {
                  "line": 45,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1298,
                "end": 1303,
                "loc": {
                  "start": {
                    "line": 45,
                    "column": 0
                  },
                  "end": {
                    "line": 45,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1304,
                "end": 1312,
                "loc": {
                  "start": {
                    "line": 45,
                    "column": 6
                  },
                  "end": {
                    "line": 45,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1313,
              "end": 1322,
              "loc": {
                "start": {
                  "line": 45,
                  "column": 15
                },
                "end": {
                  "line": 45,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1323,
            "end": 1334,
            "loc": {
              "start": {
                "line": 45,
                "column": 25
              },
              "end": {
                "line": 45,
                "column": 36
              }
            },
            "name": "interaction"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 1337,
          "end": 1346,
          "loc": {
            "start": {
              "line": 45,
              "column": 39
            },
            "end": {
              "line": 45,
              "column": 48
            }
          },
          "name": "undefined"
        }
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": " Extend Object3D with event emitter",
          "start": 1351,
          "end": 1388,
          "loc": {
            "start": {
              "line": 47,
              "column": 0
            },
            "end": {
              "line": 47,
              "column": 37
            }
          },
          "range": [
            1351,
            1388
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 1390,
      "end": 1429,
      "loc": {
        "start": {
          "line": 48,
          "column": 0
        },
        "end": {
          "line": 48,
          "column": 39
        }
      },
      "expression": {
        "type": "CallExpression",
        "start": 1390,
        "end": 1428,
        "loc": {
          "start": {
            "line": 48,
            "column": 0
          },
          "end": {
            "line": 48,
            "column": 38
          }
        },
        "callee": {
          "type": "MemberExpression",
          "start": 1390,
          "end": 1402,
          "loc": {
            "start": {
              "line": 48,
              "column": 0
            },
            "end": {
              "line": 48,
              "column": 12
            }
          },
          "object": {
            "type": "Identifier",
            "start": 1390,
            "end": 1396,
            "loc": {
              "start": {
                "line": 48,
                "column": 0
              },
              "end": {
                "line": 48,
                "column": 6
              }
            },
            "name": "Events",
            "leadingComments": null
          },
          "property": {
            "type": "Identifier",
            "start": 1397,
            "end": 1402,
            "loc": {
              "start": {
                "line": 48,
                "column": 7
              },
              "end": {
                "line": 48,
                "column": 12
              }
            },
            "name": "mixin"
          },
          "computed": false,
          "leadingComments": null
        },
        "arguments": [
          {
            "type": "MemberExpression",
            "start": 1403,
            "end": 1427,
            "loc": {
              "start": {
                "line": 48,
                "column": 13
              },
              "end": {
                "line": 48,
                "column": 37
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1403,
              "end": 1417,
              "loc": {
                "start": {
                  "line": 48,
                  "column": 13
                },
                "end": {
                  "line": 48,
                  "column": 27
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1403,
                "end": 1408,
                "loc": {
                  "start": {
                    "line": 48,
                    "column": 13
                  },
                  "end": {
                    "line": 48,
                    "column": 18
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1409,
                "end": 1417,
                "loc": {
                  "start": {
                    "line": 48,
                    "column": 19
                  },
                  "end": {
                    "line": 48,
                    "column": 27
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1418,
              "end": 1427,
              "loc": {
                "start": {
                  "line": 48,
                  "column": 28
                },
                "end": {
                  "line": 48,
                  "column": 37
                }
              },
              "name": "prototype"
            },
            "computed": false
          }
        ],
        "leadingComments": null
      },
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": " Extend Object3D with event emitter",
          "start": 1351,
          "end": 1388,
          "loc": {
            "start": {
              "line": 47,
              "column": 0
            },
            "end": {
              "line": 47,
              "column": 37
            }
          },
          "range": [
            1351,
            1388
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 1433,
      "end": 2482,
      "loc": {
        "start": {
          "line": 50,
          "column": 0
        },
        "end": {
          "line": 81,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1433,
        "end": 2482,
        "loc": {
          "start": {
            "line": 50,
            "column": 0
          },
          "end": {
            "line": 81,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1433,
          "end": 1475,
          "loc": {
            "start": {
              "line": 50,
              "column": 0
            },
            "end": {
              "line": 50,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1433,
            "end": 1457,
            "loc": {
              "start": {
                "line": 50,
                "column": 0
              },
              "end": {
                "line": 50,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1433,
              "end": 1447,
              "loc": {
                "start": {
                  "line": 50,
                  "column": 0
                },
                "end": {
                  "line": 50,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1433,
                "end": 1438,
                "loc": {
                  "start": {
                    "line": 50,
                    "column": 0
                  },
                  "end": {
                    "line": 50,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1439,
                "end": 1447,
                "loc": {
                  "start": {
                    "line": 50,
                    "column": 6
                  },
                  "end": {
                    "line": 50,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1448,
              "end": 1457,
              "loc": {
                "start": {
                  "line": 50,
                  "column": 15
                },
                "end": {
                  "line": 50,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1458,
            "end": 1475,
            "loc": {
              "start": {
                "line": 50,
                "column": 25
              },
              "end": {
                "line": 50,
                "column": 42
              }
            },
            "name": "createInteraction"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 1478,
          "end": 2482,
          "loc": {
            "start": {
              "line": 50,
              "column": 45
            },
            "end": {
              "line": 81,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 1458,
            "end": 1475,
            "loc": {
              "start": {
                "line": 50,
                "column": 25
              },
              "end": {
                "line": 50,
                "column": 42
              }
            },
            "name": "createInteraction"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 1487,
              "end": 1499,
              "loc": {
                "start": {
                  "line": 50,
                  "column": 54
                },
                "end": {
                  "line": 50,
                  "column": 66
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 1487,
                "end": 1494,
                "loc": {
                  "start": {
                    "line": 50,
                    "column": 54
                  },
                  "end": {
                    "line": 50,
                    "column": 61
                  }
                },
                "name": "options"
              },
              "right": {
                "type": "ObjectExpression",
                "start": 1497,
                "end": 1499,
                "loc": {
                  "start": {
                    "line": 50,
                    "column": 64
                  },
                  "end": {
                    "line": 50,
                    "column": 66
                  }
                },
                "properties": []
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 1501,
            "end": 2482,
            "loc": {
              "start": {
                "line": 50,
                "column": 68
              },
              "end": {
                "line": 81,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 1508,
                "end": 1551,
                "loc": {
                  "start": {
                    "line": 51,
                    "column": 4
                  },
                  "end": {
                    "line": 52,
                    "column": 20
                  }
                },
                "test": {
                  "type": "MemberExpression",
                  "start": 1512,
                  "end": 1528,
                  "loc": {
                    "start": {
                      "line": 51,
                      "column": 8
                    },
                    "end": {
                      "line": 51,
                      "column": 24
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 1512,
                    "end": 1516,
                    "loc": {
                      "start": {
                        "line": 51,
                        "column": 8
                      },
                      "end": {
                        "line": 51,
                        "column": 12
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 1517,
                    "end": 1528,
                    "loc": {
                      "start": {
                        "line": 51,
                        "column": 13
                      },
                      "end": {
                        "line": 51,
                        "column": 24
                      }
                    },
                    "name": "interaction"
                  },
                  "computed": false
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 1539,
                  "end": 1551,
                  "loc": {
                    "start": {
                      "line": 52,
                      "column": 8
                    },
                    "end": {
                      "line": 52,
                      "column": 20
                    }
                  },
                  "argument": {
                    "type": "ThisExpression",
                    "start": 1546,
                    "end": 1550,
                    "loc": {
                      "start": {
                        "line": 52,
                        "column": 15
                      },
                      "end": {
                        "line": 52,
                        "column": 19
                      }
                    }
                  }
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 1559,
                "end": 1798,
                "loc": {
                  "start": {
                    "line": 54,
                    "column": 4
                  },
                  "end": {
                    "line": 63,
                    "column": 6
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 1559,
                  "end": 1797,
                  "loc": {
                    "start": {
                      "line": 54,
                      "column": 4
                    },
                    "end": {
                      "line": 63,
                      "column": 5
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 1559,
                    "end": 1575,
                    "loc": {
                      "start": {
                        "line": 54,
                        "column": 4
                      },
                      "end": {
                        "line": 54,
                        "column": 20
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 1559,
                      "end": 1563,
                      "loc": {
                        "start": {
                          "line": 54,
                          "column": 4
                        },
                        "end": {
                          "line": 54,
                          "column": 8
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 1564,
                      "end": 1575,
                      "loc": {
                        "start": {
                          "line": 54,
                          "column": 9
                        },
                        "end": {
                          "line": 54,
                          "column": 20
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 1578,
                    "end": 1797,
                    "loc": {
                      "start": {
                        "line": 54,
                        "column": 23
                      },
                      "end": {
                        "line": 63,
                        "column": 5
                      }
                    },
                    "properties": [
                      {
                        "type": "Property",
                        "start": 1589,
                        "end": 1600,
                        "loc": {
                          "start": {
                            "line": 55,
                            "column": 8
                          },
                          "end": {
                            "line": 55,
                            "column": 19
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1589,
                          "end": 1594,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 8
                            },
                            "end": {
                              "line": 55,
                              "column": 13
                            }
                          },
                          "name": "first"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1596,
                          "end": 1600,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 15
                            },
                            "end": {
                              "line": 55,
                              "column": 19
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1611,
                        "end": 1623,
                        "loc": {
                          "start": {
                            "line": 56,
                            "column": 8
                          },
                          "end": {
                            "line": 56,
                            "column": 20
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1611,
                          "end": 1616,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 8
                            },
                            "end": {
                              "line": 56,
                              "column": 13
                            }
                          },
                          "name": "faces"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1618,
                          "end": 1623,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 15
                            },
                            "end": {
                              "line": 56,
                              "column": 20
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1634,
                        "end": 1645,
                        "loc": {
                          "start": {
                            "line": 57,
                            "column": 8
                          },
                          "end": {
                            "line": 57,
                            "column": 19
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1634,
                          "end": 1642,
                          "loc": {
                            "start": {
                              "line": 57,
                              "column": 8
                            },
                            "end": {
                              "line": 57,
                              "column": 16
                            }
                          },
                          "name": "priority"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1644,
                          "end": 1645,
                          "loc": {
                            "start": {
                              "line": 57,
                              "column": 18
                            },
                            "end": {
                              "line": 57,
                              "column": 19
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1656,
                        "end": 1669,
                        "loc": {
                          "start": {
                            "line": 58,
                            "column": 8
                          },
                          "end": {
                            "line": 58,
                            "column": 21
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1656,
                          "end": 1663,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 8
                            },
                            "end": {
                              "line": 58,
                              "column": 15
                            }
                          },
                          "name": "enabled"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1665,
                          "end": 1669,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 17
                            },
                            "end": {
                              "line": 58,
                              "column": 21
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1680,
                        "end": 1696,
                        "loc": {
                          "start": {
                            "line": 59,
                            "column": 8
                          },
                          "end": {
                            "line": 59,
                            "column": 24
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1680,
                          "end": 1689,
                          "loc": {
                            "start": {
                              "line": 59,
                              "column": 8
                            },
                            "end": {
                              "line": 59,
                              "column": 17
                            }
                          },
                          "name": "recursive"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1691,
                          "end": 1696,
                          "loc": {
                            "start": {
                              "line": 59,
                              "column": 19
                            },
                            "end": {
                              "line": 59,
                              "column": 24
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1707,
                        "end": 1743,
                        "loc": {
                          "start": {
                            "line": 60,
                            "column": 8
                          },
                          "end": {
                            "line": 60,
                            "column": 44
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1707,
                          "end": 1715,
                          "loc": {
                            "start": {
                              "line": 60,
                              "column": 8
                            },
                            "end": {
                              "line": 60,
                              "column": 16
                            }
                          },
                          "name": "approach"
                        },
                        "value": {
                          "type": "MemberExpression",
                          "start": 1717,
                          "end": 1743,
                          "loc": {
                            "start": {
                              "line": 60,
                              "column": 18
                            },
                            "end": {
                              "line": 60,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1717,
                            "end": 1735,
                            "loc": {
                              "start": {
                                "line": 60,
                                "column": 18
                              },
                              "end": {
                                "line": 60,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1717,
                              "end": 1726,
                              "loc": {
                                "start": {
                                  "line": 60,
                                  "column": 18
                                },
                                "end": {
                                  "line": 60,
                                  "column": 27
                                }
                              },
                              "name": "Raycaster"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1727,
                              "end": 1735,
                              "loc": {
                                "start": {
                                  "line": 60,
                                  "column": 28
                                },
                                "end": {
                                  "line": 60,
                                  "column": 36
                                }
                              },
                              "name": "Approach"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1736,
                            "end": 1743,
                            "loc": {
                              "start": {
                                "line": 60,
                                "column": 37
                              },
                              "end": {
                                "line": 60,
                                "column": 44
                              }
                            },
                            "name": "Default"
                          },
                          "computed": false
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1754,
                        "end": 1769,
                        "loc": {
                          "start": {
                            "line": 61,
                            "column": 8
                          },
                          "end": {
                            "line": 61,
                            "column": 23
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1754,
                          "end": 1759,
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 8
                            },
                            "end": {
                              "line": 61,
                              "column": 13
                            }
                          },
                          "name": "types"
                        },
                        "value": {
                          "type": "ArrayExpression",
                          "start": 1761,
                          "end": 1769,
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 15
                            },
                            "end": {
                              "line": 61,
                              "column": 23
                            }
                          },
                          "elements": [
                            {
                              "type": "Literal",
                              "start": 1762,
                              "end": 1768,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 16
                                },
                                "end": {
                                  "line": 61,
                                  "column": 22
                                }
                              },
                              "value": "Mesh",
                              "rawValue": "Mesh",
                              "raw": "'Mesh'"
                            }
                          ]
                        },
                        "kind": "init"
                      },
                      {
                        "type": "SpreadProperty",
                        "start": 1780,
                        "end": 1790,
                        "loc": {
                          "start": {
                            "line": 62,
                            "column": 8
                          },
                          "end": {
                            "line": 62,
                            "column": 18
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 1783,
                          "end": 1790,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 11
                            },
                            "end": {
                              "line": 62,
                              "column": 18
                            }
                          },
                          "name": "options"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "VariableDeclaration",
                "start": 1806,
                "end": 1823,
                "loc": {
                  "start": {
                    "line": 65,
                    "column": 4
                  },
                  "end": {
                    "line": 65,
                    "column": 21
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 1810,
                    "end": 1822,
                    "loc": {
                      "start": {
                        "line": 65,
                        "column": 8
                      },
                      "end": {
                        "line": 65,
                        "column": 20
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 1810,
                      "end": 1815,
                      "loc": {
                        "start": {
                          "line": 65,
                          "column": 8
                        },
                        "end": {
                          "line": 65,
                          "column": 13
                        }
                      },
                      "name": "scope"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 1818,
                      "end": 1822,
                      "loc": {
                        "start": {
                          "line": 65,
                          "column": 16
                        },
                        "end": {
                          "line": 65,
                          "column": 20
                        }
                      }
                    }
                  }
                ],
                "kind": "let"
              },
              {
                "type": "ExpressionStatement",
                "start": 1829,
                "end": 2176,
                "loc": {
                  "start": {
                    "line": 66,
                    "column": 4
                  },
                  "end": {
                    "line": 74,
                    "column": 7
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 1829,
                  "end": 2175,
                  "loc": {
                    "start": {
                      "line": 66,
                      "column": 4
                    },
                    "end": {
                      "line": 74,
                      "column": 6
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 1829,
                    "end": 1850,
                    "loc": {
                      "start": {
                        "line": 66,
                        "column": 4
                      },
                      "end": {
                        "line": 66,
                        "column": 25
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 1829,
                      "end": 1845,
                      "loc": {
                        "start": {
                          "line": 66,
                          "column": 4
                        },
                        "end": {
                          "line": 66,
                          "column": 20
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 1829,
                        "end": 1843,
                        "loc": {
                          "start": {
                            "line": 66,
                            "column": 4
                          },
                          "end": {
                            "line": 66,
                            "column": 18
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 1829,
                          "end": 1833,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 4
                            },
                            "end": {
                              "line": 66,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 1834,
                          "end": 1843,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 9
                            },
                            "end": {
                              "line": 66,
                              "column": 18
                            }
                          },
                          "name": "viewFound"
                        },
                        "computed": false
                      },
                      "arguments": []
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 1846,
                      "end": 1850,
                      "loc": {
                        "start": {
                          "line": 66,
                          "column": 21
                        },
                        "end": {
                          "line": 66,
                          "column": 25
                        }
                      },
                      "name": "then"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 1851,
                      "end": 2174,
                      "loc": {
                        "start": {
                          "line": 66,
                          "column": 26
                        },
                        "end": {
                          "line": 74,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 1851,
                          "end": 1855,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 26
                            },
                            "end": {
                              "line": 66,
                              "column": 30
                            }
                          },
                          "name": "view"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 1859,
                        "end": 2174,
                        "loc": {
                          "start": {
                            "line": 66,
                            "column": 34
                          },
                          "end": {
                            "line": 74,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 1870,
                            "end": 2167,
                            "loc": {
                              "start": {
                                "line": 67,
                                "column": 8
                              },
                              "end": {
                                "line": 73,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 1874,
                              "end": 1919,
                              "loc": {
                                "start": {
                                  "line": 67,
                                  "column": 12
                                },
                                "end": {
                                  "line": 67,
                                  "column": 57
                                }
                              },
                              "left": {
                                "type": "CallExpression",
                                "start": 1874,
                                "end": 1913,
                                "loc": {
                                  "start": {
                                    "line": 67,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 67,
                                    "column": 51
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 1874,
                                  "end": 1906,
                                  "loc": {
                                    "start": {
                                      "line": 67,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 67,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1874,
                                    "end": 1898,
                                    "loc": {
                                      "start": {
                                        "line": 67,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 67,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1874,
                                      "end": 1890,
                                      "loc": {
                                        "start": {
                                          "line": 67,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 67,
                                          "column": 28
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1874,
                                        "end": 1878,
                                        "loc": {
                                          "start": {
                                            "line": 67,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 67,
                                            "column": 16
                                          }
                                        },
                                        "name": "view"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1879,
                                        "end": 1890,
                                        "loc": {
                                          "start": {
                                            "line": 67,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 67,
                                            "column": 28
                                          }
                                        },
                                        "name": "interaction"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1891,
                                      "end": 1898,
                                      "loc": {
                                        "start": {
                                          "line": 67,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 67,
                                          "column": 36
                                        }
                                      },
                                      "name": "targets"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1899,
                                    "end": 1906,
                                    "loc": {
                                      "start": {
                                        "line": 67,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 67,
                                        "column": 44
                                      }
                                    },
                                    "name": "indexOf"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 1907,
                                    "end": 1912,
                                    "loc": {
                                      "start": {
                                        "line": 67,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 67,
                                        "column": 50
                                      }
                                    },
                                    "name": "scope"
                                  }
                                ]
                              },
                              "operator": "==",
                              "right": {
                                "type": "UnaryExpression",
                                "start": 1917,
                                "end": 1919,
                                "loc": {
                                  "start": {
                                    "line": 67,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 67,
                                    "column": 57
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 1918,
                                  "end": 1919,
                                  "loc": {
                                    "start": {
                                      "line": 67,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 67,
                                      "column": 57
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 1921,
                              "end": 2167,
                              "loc": {
                                "start": {
                                  "line": 67,
                                  "column": 59
                                },
                                "end": {
                                  "line": 73,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 1936,
                                  "end": 1973,
                                  "loc": {
                                    "start": {
                                      "line": 68,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 68,
                                      "column": 49
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 1936,
                                    "end": 1972,
                                    "loc": {
                                      "start": {
                                        "line": 68,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 68,
                                        "column": 48
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 1936,
                                      "end": 1965,
                                      "loc": {
                                        "start": {
                                          "line": 68,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 68,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1936,
                                        "end": 1960,
                                        "loc": {
                                          "start": {
                                            "line": 68,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 68,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 1936,
                                          "end": 1952,
                                          "loc": {
                                            "start": {
                                              "line": 68,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 68,
                                              "column": 28
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 1936,
                                            "end": 1940,
                                            "loc": {
                                              "start": {
                                                "line": 68,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 68,
                                                "column": 16
                                              }
                                            },
                                            "name": "view"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1941,
                                            "end": 1952,
                                            "loc": {
                                              "start": {
                                                "line": 68,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 68,
                                                "column": 28
                                              }
                                            },
                                            "name": "interaction"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1953,
                                          "end": 1960,
                                          "loc": {
                                            "start": {
                                              "line": 68,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 68,
                                              "column": 36
                                            }
                                          },
                                          "name": "targets"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1961,
                                        "end": 1965,
                                        "loc": {
                                          "start": {
                                            "line": 68,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 68,
                                            "column": 41
                                          }
                                        },
                                        "name": "push"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 1966,
                                        "end": 1971,
                                        "loc": {
                                          "start": {
                                            "line": 68,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 68,
                                            "column": 47
                                          }
                                        },
                                        "name": "scope"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 1989,
                                  "end": 2003,
                                  "loc": {
                                    "start": {
                                      "line": 70,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 70,
                                      "column": 26
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 1993,
                                      "end": 2002,
                                      "loc": {
                                        "start": {
                                          "line": 70,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 70,
                                          "column": 25
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 1993,
                                        "end": 1998,
                                        "loc": {
                                          "start": {
                                            "line": 70,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 70,
                                            "column": 21
                                          }
                                        },
                                        "name": "count"
                                      },
                                      "init": {
                                        "type": "Literal",
                                        "start": 2001,
                                        "end": 2002,
                                        "loc": {
                                          "start": {
                                            "line": 70,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 70,
                                            "column": 25
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    }
                                  ],
                                  "kind": "let"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 2017,
                                  "end": 2072,
                                  "loc": {
                                    "start": {
                                      "line": 71,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 71,
                                      "column": 67
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 2017,
                                    "end": 2071,
                                    "loc": {
                                      "start": {
                                        "line": 71,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 71,
                                        "column": 66
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 2017,
                                      "end": 2036,
                                      "loc": {
                                        "start": {
                                          "line": 71,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 71,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 2017,
                                        "end": 2027,
                                        "loc": {
                                          "start": {
                                            "line": 71,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 71,
                                            "column": 22
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 2017,
                                          "end": 2021,
                                          "loc": {
                                            "start": {
                                              "line": 71,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 71,
                                              "column": 16
                                            }
                                          },
                                          "name": "view"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 2022,
                                          "end": 2027,
                                          "loc": {
                                            "start": {
                                              "line": 71,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 71,
                                              "column": 22
                                            }
                                          },
                                          "name": "scene"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2028,
                                        "end": 2036,
                                        "loc": {
                                          "start": {
                                            "line": 71,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 71,
                                            "column": 31
                                          }
                                        },
                                        "name": "traverse"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 2037,
                                        "end": 2070,
                                        "loc": {
                                          "start": {
                                            "line": 71,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 71,
                                            "column": 65
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": true,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 2037,
                                            "end": 2041,
                                            "loc": {
                                              "start": {
                                                "line": 71,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 71,
                                                "column": 36
                                              }
                                            },
                                            "name": "item"
                                          }
                                        ],
                                        "body": {
                                          "type": "AssignmentExpression",
                                          "start": 2045,
                                          "end": 2070,
                                          "loc": {
                                            "start": {
                                              "line": 71,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 71,
                                              "column": 65
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2045,
                                            "end": 2060,
                                            "loc": {
                                              "start": {
                                                "line": 71,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 71,
                                                "column": 55
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2045,
                                              "end": 2049,
                                              "loc": {
                                                "start": {
                                                  "line": 71,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 71,
                                                  "column": 44
                                                }
                                              },
                                              "name": "item"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2050,
                                              "end": 2060,
                                              "loc": {
                                                "start": {
                                                  "line": 71,
                                                  "column": 45
                                                },
                                                "end": {
                                                  "line": 71,
                                                  "column": 55
                                                }
                                              },
                                              "name": "depthIndex"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "UpdateExpression",
                                            "start": 2063,
                                            "end": 2070,
                                            "loc": {
                                              "start": {
                                                "line": 71,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 71,
                                                "column": 65
                                              }
                                            },
                                            "operator": "++",
                                            "prefix": false,
                                            "argument": {
                                              "type": "Identifier",
                                              "start": 2063,
                                              "end": 2068,
                                              "loc": {
                                                "start": {
                                                  "line": 71,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 71,
                                                  "column": 63
                                                }
                                              },
                                              "name": "count"
                                            }
                                          }
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 2086,
                                  "end": 2156,
                                  "loc": {
                                    "start": {
                                      "line": 72,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 72,
                                      "column": 82
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 2086,
                                    "end": 2155,
                                    "loc": {
                                      "start": {
                                        "line": 72,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 72,
                                        "column": 81
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 2086,
                                      "end": 2115,
                                      "loc": {
                                        "start": {
                                          "line": 72,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 72,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 2086,
                                        "end": 2110,
                                        "loc": {
                                          "start": {
                                            "line": 72,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 72,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 2086,
                                          "end": 2102,
                                          "loc": {
                                            "start": {
                                              "line": 72,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 72,
                                              "column": 28
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 2086,
                                            "end": 2090,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 16
                                              }
                                            },
                                            "name": "view"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2091,
                                            "end": 2102,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 28
                                              }
                                            },
                                            "name": "interaction"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 2103,
                                          "end": 2110,
                                          "loc": {
                                            "start": {
                                              "line": 72,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 72,
                                              "column": 36
                                            }
                                          },
                                          "name": "targets"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2111,
                                        "end": 2115,
                                        "loc": {
                                          "start": {
                                            "line": 72,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 72,
                                            "column": 41
                                          }
                                        },
                                        "name": "sort"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 2117,
                                        "end": 2154,
                                        "loc": {
                                          "start": {
                                            "line": 72,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 72,
                                            "column": 80
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": true,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 2118,
                                            "end": 2119,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 45
                                              }
                                            },
                                            "name": "a"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 2121,
                                            "end": 2122,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 48
                                              }
                                            },
                                            "name": "b"
                                          }
                                        ],
                                        "body": {
                                          "type": "BinaryExpression",
                                          "start": 2127,
                                          "end": 2154,
                                          "loc": {
                                            "start": {
                                              "line": 72,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 72,
                                              "column": 80
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2127,
                                            "end": 2139,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 65
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2127,
                                              "end": 2128,
                                              "loc": {
                                                "start": {
                                                  "line": 72,
                                                  "column": 53
                                                },
                                                "end": {
                                                  "line": 72,
                                                  "column": 54
                                                }
                                              },
                                              "name": "a"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2129,
                                              "end": 2139,
                                              "loc": {
                                                "start": {
                                                  "line": 72,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 72,
                                                  "column": 65
                                                }
                                              },
                                              "name": "depthIndex"
                                            },
                                            "computed": false
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 2142,
                                            "end": 2154,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 68
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 80
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2142,
                                              "end": 2143,
                                              "loc": {
                                                "start": {
                                                  "line": 72,
                                                  "column": 68
                                                },
                                                "end": {
                                                  "line": 72,
                                                  "column": 69
                                                }
                                              },
                                              "name": "b"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2144,
                                              "end": 2154,
                                              "loc": {
                                                "start": {
                                                  "line": 72,
                                                  "column": 70
                                                },
                                                "end": {
                                                  "line": 72,
                                                  "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": 2184,
                    "end": 2305,
                    "loc": {
                      "start": {
                        "line": 76,
                        "column": 4
                      },
                      "end": {
                        "line": 76,
                        "column": 125
                      }
                    },
                    "range": [
                      2184,
                      2305
                    ]
                  }
                ]
              },
              {
                "type": "ExpressionStatement",
                "start": 2311,
                "end": 2459,
                "loc": {
                  "start": {
                    "line": 77,
                    "column": 4
                  },
                  "end": {
                    "line": 78,
                    "column": 123
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 2311,
                  "end": 2458,
                  "loc": {
                    "start": {
                      "line": 77,
                      "column": 4
                    },
                    "end": {
                      "line": 78,
                      "column": 122
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 2311,
                    "end": 2323,
                    "loc": {
                      "start": {
                        "line": 77,
                        "column": 4
                      },
                      "end": {
                        "line": 77,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 2311,
                      "end": 2315,
                      "loc": {
                        "start": {
                          "line": 77,
                          "column": 4
                        },
                        "end": {
                          "line": 77,
                          "column": 8
                        }
                      },
                      "leadingComments": null
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 2316,
                      "end": 2323,
                      "loc": {
                        "start": {
                          "line": 77,
                          "column": 9
                        },
                        "end": {
                          "line": 77,
                          "column": 16
                        }
                      },
                      "name": "inspect"
                    },
                    "computed": false,
                    "leadingComments": null
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 2324,
                      "end": 2457,
                      "loc": {
                        "start": {
                          "line": 77,
                          "column": 17
                        },
                        "end": {
                          "line": 78,
                          "column": 121
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": true,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 2324,
                          "end": 2331,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 17
                            },
                            "end": {
                              "line": 77,
                              "column": 24
                            }
                          },
                          "name": "context"
                        }
                      ],
                      "body": {
                        "type": "AssignmentExpression",
                        "start": 2344,
                        "end": 2457,
                        "loc": {
                          "start": {
                            "line": 78,
                            "column": 8
                          },
                          "end": {
                            "line": 78,
                            "column": 121
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2344,
                          "end": 2368,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 8
                            },
                            "end": {
                              "line": 78,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2344,
                            "end": 2360,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 8
                              },
                              "end": {
                                "line": 78,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 2344,
                              "end": 2348,
                              "loc": {
                                "start": {
                                  "line": 78,
                                  "column": 8
                                },
                                "end": {
                                  "line": 78,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2349,
                              "end": 2360,
                              "loc": {
                                "start": {
                                  "line": 78,
                                  "column": 13
                                },
                                "end": {
                                  "line": 78,
                                  "column": 24
                                }
                              },
                              "name": "interaction"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2361,
                            "end": 2368,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 25
                              },
                              "end": {
                                "line": 78,
                                "column": 32
                              }
                            },
                            "name": "_active"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "UnaryExpression",
                          "start": 2371,
                          "end": 2457,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 35
                            },
                            "end": {
                              "line": 78,
                              "column": 121
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 2372,
                            "end": 2457,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 36
                              },
                              "end": {
                                "line": 78,
                                "column": 121
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "CallExpression",
                              "start": 2373,
                              "end": 2457,
                              "loc": {
                                "start": {
                                  "line": 78,
                                  "column": 37
                                },
                                "end": {
                                  "line": 78,
                                  "column": 121
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 2373,
                                "end": 2406,
                                "loc": {
                                  "start": {
                                    "line": 78,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 78,
                                    "column": 70
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 2373,
                                  "end": 2401,
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 65
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 2373,
                                    "end": 2384,
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2373,
                                      "end": 2379,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 43
                                        }
                                      },
                                      "name": "Object"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2380,
                                      "end": 2384,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 48
                                        }
                                      },
                                      "name": "keys"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 2385,
                                      "end": 2400,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 64
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 2385,
                                        "end": 2389,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 53
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2390,
                                        "end": 2400,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 64
                                          }
                                        },
                                        "name": "_callbacks"
                                      },
                                      "computed": false
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2402,
                                  "end": 2406,
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 66
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 70
                                    }
                                  },
                                  "name": "find"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 2407,
                                  "end": 2456,
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 120
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 2407,
                                      "end": 2411,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 71
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 75
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ],
                                  "body": {
                                    "type": "BinaryExpression",
                                    "start": 2415,
                                    "end": 2456,
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 79
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 120
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 2415,
                                      "end": 2419,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 79
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 83
                                        }
                                      },
                                      "name": "item"
                                    },
                                    "operator": "in",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 2423,
                                      "end": 2456,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 87
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 120
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 2423,
                                        "end": 2444,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 87
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 108
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 2423,
                                          "end": 2437,
                                          "loc": {
                                            "start": {
                                              "line": 78,
                                              "column": 87
                                            },
                                            "end": {
                                              "line": 78,
                                              "column": 101
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 2423,
                                            "end": 2428,
                                            "loc": {
                                              "start": {
                                                "line": 78,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 78,
                                                "column": 92
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2429,
                                            "end": 2437,
                                            "loc": {
                                              "start": {
                                                "line": 78,
                                                "column": 93
                                              },
                                              "end": {
                                                "line": 78,
                                                "column": 101
                                              }
                                            },
                                            "name": "Object3D"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 2438,
                                          "end": 2444,
                                          "loc": {
                                            "start": {
                                              "line": 78,
                                              "column": 102
                                            },
                                            "end": {
                                              "line": 78,
                                              "column": 108
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2445,
                                        "end": 2456,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 109
                                          },
                                          "end": {
                                            "line": 78,
                                            "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": 2184,
                    "end": 2305,
                    "loc": {
                      "start": {
                        "line": 76,
                        "column": 4
                      },
                      "end": {
                        "line": 76,
                        "column": 125
                      }
                    },
                    "range": [
                      2184,
                      2305
                    ]
                  }
                ]
              },
              {
                "type": "ReturnStatement",
                "start": 2467,
                "end": 2479,
                "loc": {
                  "start": {
                    "line": 80,
                    "column": 4
                  },
                  "end": {
                    "line": 80,
                    "column": 16
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 2474,
                  "end": 2478,
                  "loc": {
                    "start": {
                      "line": 80,
                      "column": 11
                    },
                    "end": {
                      "line": 80,
                      "column": 15
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 2486,
      "end": 3057,
      "loc": {
        "start": {
          "line": 83,
          "column": 0
        },
        "end": {
          "line": 97,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 2486,
        "end": 3057,
        "loc": {
          "start": {
            "line": 83,
            "column": 0
          },
          "end": {
            "line": 97,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 2486,
          "end": 2528,
          "loc": {
            "start": {
              "line": 83,
              "column": 0
            },
            "end": {
              "line": 83,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 2486,
            "end": 2510,
            "loc": {
              "start": {
                "line": 83,
                "column": 0
              },
              "end": {
                "line": 83,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 2486,
              "end": 2500,
              "loc": {
                "start": {
                  "line": 83,
                  "column": 0
                },
                "end": {
                  "line": 83,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 2486,
                "end": 2491,
                "loc": {
                  "start": {
                    "line": 83,
                    "column": 0
                  },
                  "end": {
                    "line": 83,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 2492,
                "end": 2500,
                "loc": {
                  "start": {
                    "line": 83,
                    "column": 6
                  },
                  "end": {
                    "line": 83,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 2501,
              "end": 2510,
              "loc": {
                "start": {
                  "line": 83,
                  "column": 15
                },
                "end": {
                  "line": 83,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 2511,
            "end": 2528,
            "loc": {
              "start": {
                "line": 83,
                "column": 25
              },
              "end": {
                "line": 83,
                "column": 42
              }
            },
            "name": "removeInteraction"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 2531,
          "end": 3057,
          "loc": {
            "start": {
              "line": 83,
              "column": 45
            },
            "end": {
              "line": 97,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 2511,
            "end": 2528,
            "loc": {
              "start": {
                "line": 83,
                "column": 25
              },
              "end": {
                "line": 83,
                "column": 42
              }
            },
            "name": "removeInteraction"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 2542,
            "end": 3057,
            "loc": {
              "start": {
                "line": 83,
                "column": 56
              },
              "end": {
                "line": 97,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 2549,
                "end": 3054,
                "loc": {
                  "start": {
                    "line": 84,
                    "column": 4
                  },
                  "end": {
                    "line": 96,
                    "column": 5
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 2553,
                  "end": 2582,
                  "loc": {
                    "start": {
                      "line": 84,
                      "column": 8
                    },
                    "end": {
                      "line": 84,
                      "column": 37
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 2553,
                    "end": 2562,
                    "loc": {
                      "start": {
                        "line": 84,
                        "column": 8
                      },
                      "end": {
                        "line": 84,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 2553,
                      "end": 2557,
                      "loc": {
                        "start": {
                          "line": 84,
                          "column": 8
                        },
                        "end": {
                          "line": 84,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 2558,
                      "end": 2562,
                      "loc": {
                        "start": {
                          "line": 84,
                          "column": 13
                        },
                        "end": {
                          "line": 84,
                          "column": 17
                        }
                      },
                      "name": "view"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "MemberExpression",
                    "start": 2566,
                    "end": 2582,
                    "loc": {
                      "start": {
                        "line": 84,
                        "column": 21
                      },
                      "end": {
                        "line": 84,
                        "column": 37
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 2566,
                      "end": 2570,
                      "loc": {
                        "start": {
                          "line": 84,
                          "column": 21
                        },
                        "end": {
                          "line": 84,
                          "column": 25
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 2571,
                      "end": 2582,
                      "loc": {
                        "start": {
                          "line": 84,
                          "column": 26
                        },
                        "end": {
                          "line": 84,
                          "column": 37
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 2584,
                  "end": 3054,
                  "loc": {
                    "start": {
                      "line": 84,
                      "column": 39
                    },
                    "end": {
                      "line": 96,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 2595,
                      "end": 2624,
                      "loc": {
                        "start": {
                          "line": 85,
                          "column": 8
                        },
                        "end": {
                          "line": 85,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 2595,
                        "end": 2623,
                        "loc": {
                          "start": {
                            "line": 85,
                            "column": 8
                          },
                          "end": {
                            "line": 85,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2595,
                          "end": 2611,
                          "loc": {
                            "start": {
                              "line": 85,
                              "column": 8
                            },
                            "end": {
                              "line": 85,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2595,
                            "end": 2599,
                            "loc": {
                              "start": {
                                "line": 85,
                                "column": 8
                              },
                              "end": {
                                "line": 85,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2600,
                            "end": 2611,
                            "loc": {
                              "start": {
                                "line": 85,
                                "column": 13
                              },
                              "end": {
                                "line": 85,
                                "column": 24
                              }
                            },
                            "name": "interaction"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 2614,
                          "end": 2623,
                          "loc": {
                            "start": {
                              "line": 85,
                              "column": 27
                            },
                            "end": {
                              "line": 85,
                              "column": 36
                            }
                          },
                          "name": "undefined"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2634,
                      "end": 2675,
                      "loc": {
                        "start": {
                          "line": 86,
                          "column": 8
                        },
                        "end": {
                          "line": 86,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2634,
                        "end": 2674,
                        "loc": {
                          "start": {
                            "line": 86,
                            "column": 8
                          },
                          "end": {
                            "line": 86,
                            "column": 48
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2634,
                          "end": 2668,
                          "loc": {
                            "start": {
                              "line": 86,
                              "column": 8
                            },
                            "end": {
                              "line": 86,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2634,
                            "end": 2655,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 8
                              },
                              "end": {
                                "line": 86,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 2634,
                              "end": 2643,
                              "loc": {
                                "start": {
                                  "line": 86,
                                  "column": 8
                                },
                                "end": {
                                  "line": 86,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2634,
                                "end": 2638,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2639,
                                "end": 2643,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 17
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2644,
                              "end": 2655,
                              "loc": {
                                "start": {
                                  "line": 86,
                                  "column": 18
                                },
                                "end": {
                                  "line": 86,
                                  "column": 29
                                }
                              },
                              "name": "interaction"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2656,
                            "end": 2668,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 30
                              },
                              "end": {
                                "line": 86,
                                "column": 42
                              }
                            },
                            "name": "removeTarget"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 2669,
                            "end": 2673,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 43
                              },
                              "end": {
                                "line": 86,
                                "column": 47
                              }
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2685,
                      "end": 2709,
                      "loc": {
                        "start": {
                          "line": 87,
                          "column": 8
                        },
                        "end": {
                          "line": 87,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2685,
                        "end": 2708,
                        "loc": {
                          "start": {
                            "line": 87,
                            "column": 8
                          },
                          "end": {
                            "line": 87,
                            "column": 31
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2685,
                          "end": 2706,
                          "loc": {
                            "start": {
                              "line": 87,
                              "column": 8
                            },
                            "end": {
                              "line": 87,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2685,
                            "end": 2689,
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 8
                              },
                              "end": {
                                "line": 87,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2690,
                            "end": 2706,
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 13
                              },
                              "end": {
                                "line": 87,
                                "column": 29
                              }
                            },
                            "name": "removeInspectors"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2719,
                      "end": 3047,
                      "loc": {
                        "start": {
                          "line": 88,
                          "column": 8
                        },
                        "end": {
                          "line": 95,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2719,
                        "end": 3046,
                        "loc": {
                          "start": {
                            "line": 88,
                            "column": 8
                          },
                          "end": {
                            "line": 95,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2719,
                          "end": 2738,
                          "loc": {
                            "start": {
                              "line": 88,
                              "column": 8
                            },
                            "end": {
                              "line": 88,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2719,
                            "end": 2723,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 8
                              },
                              "end": {
                                "line": 88,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2724,
                            "end": 2738,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 13
                              },
                              "end": {
                                "line": 88,
                                "column": 27
                              }
                            },
                            "name": "removeListener"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 2739,
                            "end": 3045,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 28
                              },
                              "end": {
                                "line": 95,
                                "column": 9
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 2754,
                                "end": 2788,
                                "loc": {
                                  "start": {
                                    "line": 89,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 89,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2754,
                                  "end": 2780,
                                  "loc": {
                                    "start": {
                                      "line": 89,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2754,
                                    "end": 2768,
                                    "loc": {
                                      "start": {
                                        "line": 89,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 89,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2754,
                                      "end": 2761,
                                      "loc": {
                                        "start": {
                                          "line": 89,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 89,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2762,
                                      "end": 2768,
                                      "loc": {
                                        "start": {
                                          "line": 89,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 89,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2769,
                                    "end": 2780,
                                    "loc": {
                                      "start": {
                                        "line": 89,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 89,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2781,
                                  "end": 2788,
                                  "loc": {
                                    "start": {
                                      "line": 89,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 46
                                    }
                                  },
                                  "name": "Clicked"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2803,
                                "end": 2836,
                                "loc": {
                                  "start": {
                                    "line": 90,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 90,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2803,
                                  "end": 2829,
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2803,
                                    "end": 2817,
                                    "loc": {
                                      "start": {
                                        "line": 90,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 90,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2803,
                                      "end": 2810,
                                      "loc": {
                                        "start": {
                                          "line": 90,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 90,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2811,
                                      "end": 2817,
                                      "loc": {
                                        "start": {
                                          "line": 90,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 90,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2818,
                                    "end": 2829,
                                    "loc": {
                                      "start": {
                                        "line": 90,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 90,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2830,
                                  "end": 2836,
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 45
                                    }
                                  },
                                  "name": "Picked"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2851,
                                "end": 2885,
                                "loc": {
                                  "start": {
                                    "line": 91,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 91,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2851,
                                  "end": 2877,
                                  "loc": {
                                    "start": {
                                      "line": 91,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 91,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2851,
                                    "end": 2865,
                                    "loc": {
                                      "start": {
                                        "line": 91,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 91,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2851,
                                      "end": 2858,
                                      "loc": {
                                        "start": {
                                          "line": 91,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 91,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2859,
                                      "end": 2865,
                                      "loc": {
                                        "start": {
                                          "line": 91,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 91,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2866,
                                    "end": 2877,
                                    "loc": {
                                      "start": {
                                        "line": 91,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 91,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2878,
                                  "end": 2885,
                                  "loc": {
                                    "start": {
                                      "line": 91,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 91,
                                      "column": 46
                                    }
                                  },
                                  "name": "Dropped"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2900,
                                "end": 2934,
                                "loc": {
                                  "start": {
                                    "line": 92,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 92,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2900,
                                  "end": 2926,
                                  "loc": {
                                    "start": {
                                      "line": 92,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 92,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2900,
                                    "end": 2914,
                                    "loc": {
                                      "start": {
                                        "line": 92,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 92,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2900,
                                      "end": 2907,
                                      "loc": {
                                        "start": {
                                          "line": 92,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 92,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2908,
                                      "end": 2914,
                                      "loc": {
                                        "start": {
                                          "line": 92,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 92,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2915,
                                    "end": 2926,
                                    "loc": {
                                      "start": {
                                        "line": 92,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 92,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2927,
                                  "end": 2934,
                                  "loc": {
                                    "start": {
                                      "line": 92,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 92,
                                      "column": 46
                                    }
                                  },
                                  "name": "Dragged"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2949,
                                "end": 2983,
                                "loc": {
                                  "start": {
                                    "line": 93,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 93,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2949,
                                  "end": 2975,
                                  "loc": {
                                    "start": {
                                      "line": 93,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 93,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2949,
                                    "end": 2963,
                                    "loc": {
                                      "start": {
                                        "line": 93,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 93,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2949,
                                      "end": 2956,
                                      "loc": {
                                        "start": {
                                          "line": 93,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 93,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2957,
                                      "end": 2963,
                                      "loc": {
                                        "start": {
                                          "line": 93,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 93,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2964,
                                    "end": 2975,
                                    "loc": {
                                      "start": {
                                        "line": 93,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 93,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2976,
                                  "end": 2983,
                                  "loc": {
                                    "start": {
                                      "line": 93,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 93,
                                      "column": 46
                                    }
                                  },
                                  "name": "Hovered"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2998,
                                "end": 3034,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2998,
                                  "end": 3024,
                                  "loc": {
                                    "start": {
                                      "line": 94,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 94,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2998,
                                    "end": 3012,
                                    "loc": {
                                      "start": {
                                        "line": 94,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 94,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2998,
                                      "end": 3005,
                                      "loc": {
                                        "start": {
                                          "line": 94,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 94,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3006,
                                      "end": 3012,
                                      "loc": {
                                        "start": {
                                          "line": 94,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 94,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3013,
                                    "end": 3024,
                                    "loc": {
                                      "start": {
                                        "line": 94,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 94,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3025,
                                  "end": 3034,
                                  "loc": {
                                    "start": {
                                      "line": 94,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 94,
                                      "column": 48
                                    }
                                  },
                                  "name": "Unhovered"
                                },
                                "computed": false
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 3061,
      "end": 3288,
      "loc": {
        "start": {
          "line": 99,
          "column": 0
        },
        "end": {
          "line": 103,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 3061,
        "end": 3288,
        "loc": {
          "start": {
            "line": 99,
            "column": 0
          },
          "end": {
            "line": 103,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 3061,
          "end": 3095,
          "loc": {
            "start": {
              "line": 99,
              "column": 0
            },
            "end": {
              "line": 99,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 3061,
            "end": 3085,
            "loc": {
              "start": {
                "line": 99,
                "column": 0
              },
              "end": {
                "line": 99,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 3061,
              "end": 3075,
              "loc": {
                "start": {
                  "line": 99,
                  "column": 0
                },
                "end": {
                  "line": 99,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 3061,
                "end": 3066,
                "loc": {
                  "start": {
                    "line": 99,
                    "column": 0
                  },
                  "end": {
                    "line": 99,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 3067,
                "end": 3075,
                "loc": {
                  "start": {
                    "line": 99,
                    "column": 6
                  },
                  "end": {
                    "line": 99,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 3076,
              "end": 3085,
              "loc": {
                "start": {
                  "line": 99,
                  "column": 15
                },
                "end": {
                  "line": 99,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 3086,
            "end": 3095,
            "loc": {
              "start": {
                "line": 99,
                "column": 25
              },
              "end": {
                "line": 99,
                "column": 34
              }
            },
            "name": "viewFound"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 3098,
          "end": 3288,
          "loc": {
            "start": {
              "line": 99,
              "column": 37
            },
            "end": {
              "line": 103,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 3086,
            "end": 3095,
            "loc": {
              "start": {
                "line": 99,
                "column": 25
              },
              "end": {
                "line": 99,
                "column": 34
              }
            },
            "name": "viewFound"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 3109,
            "end": 3288,
            "loc": {
              "start": {
                "line": 99,
                "column": 48
              },
              "end": {
                "line": 103,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 3116,
                "end": 3133,
                "loc": {
                  "start": {
                    "line": 100,
                    "column": 4
                  },
                  "end": {
                    "line": 100,
                    "column": 21
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 3120,
                    "end": 3132,
                    "loc": {
                      "start": {
                        "line": 100,
                        "column": 8
                      },
                      "end": {
                        "line": 100,
                        "column": 20
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 3120,
                      "end": 3125,
                      "loc": {
                        "start": {
                          "line": 100,
                          "column": 8
                        },
                        "end": {
                          "line": 100,
                          "column": 13
                        }
                      },
                      "name": "scope"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 3128,
                      "end": 3132,
                      "loc": {
                        "start": {
                          "line": 100,
                          "column": 16
                        },
                        "end": {
                          "line": 100,
                          "column": 20
                        }
                      }
                    }
                  }
                ],
                "kind": "let"
              },
              {
                "type": "ReturnStatement",
                "start": 3139,
                "end": 3285,
                "loc": {
                  "start": {
                    "line": 101,
                    "column": 4
                  },
                  "end": {
                    "line": 102,
                    "column": 95
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 3146,
                  "end": 3284,
                  "loc": {
                    "start": {
                      "line": 101,
                      "column": 11
                    },
                    "end": {
                      "line": 102,
                      "column": 94
                    }
                  },
                  "test": {
                    "type": "UnaryExpression",
                    "start": 3146,
                    "end": 3157,
                    "loc": {
                      "start": {
                        "line": 101,
                        "column": 11
                      },
                      "end": {
                        "line": 101,
                        "column": 22
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 3147,
                      "end": 3157,
                      "loc": {
                        "start": {
                          "line": 101,
                          "column": 12
                        },
                        "end": {
                          "line": 101,
                          "column": 22
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 3148,
                        "end": 3157,
                        "loc": {
                          "start": {
                            "line": 101,
                            "column": 13
                          },
                          "end": {
                            "line": 101,
                            "column": 22
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 3148,
                          "end": 3152,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 13
                            },
                            "end": {
                              "line": 101,
                              "column": 17
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3153,
                          "end": 3157,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 18
                            },
                            "end": {
                              "line": 101,
                              "column": 22
                            }
                          },
                          "name": "view"
                        },
                        "computed": false
                      }
                    }
                  },
                  "consequent": {
                    "type": "CallExpression",
                    "start": 3160,
                    "end": 3186,
                    "loc": {
                      "start": {
                        "line": 101,
                        "column": 25
                      },
                      "end": {
                        "line": 101,
                        "column": 51
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 3160,
                      "end": 3175,
                      "loc": {
                        "start": {
                          "line": 101,
                          "column": 25
                        },
                        "end": {
                          "line": 101,
                          "column": 40
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 3160,
                        "end": 3167,
                        "loc": {
                          "start": {
                            "line": 101,
                            "column": 25
                          },
                          "end": {
                            "line": 101,
                            "column": 32
                          }
                        },
                        "name": "Promise"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3168,
                        "end": 3175,
                        "loc": {
                          "start": {
                            "line": 101,
                            "column": 33
                          },
                          "end": {
                            "line": 101,
                            "column": 40
                          }
                        },
                        "name": "resolve"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "MemberExpression",
                        "start": 3176,
                        "end": 3185,
                        "loc": {
                          "start": {
                            "line": 101,
                            "column": 41
                          },
                          "end": {
                            "line": 101,
                            "column": 50
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 3176,
                          "end": 3180,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 41
                            },
                            "end": {
                              "line": 101,
                              "column": 45
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3181,
                          "end": 3185,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 46
                            },
                            "end": {
                              "line": 101,
                              "column": 50
                            }
                          },
                          "name": "view"
                        },
                        "computed": false
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 3198,
                    "end": 3284,
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 8
                      },
                      "end": {
                        "line": 102,
                        "column": 94
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 3202,
                      "end": 3209,
                      "loc": {
                        "start": {
                          "line": 102,
                          "column": 12
                        },
                        "end": {
                          "line": 102,
                          "column": 19
                        }
                      },
                      "name": "Promise"
                    },
                    "arguments": [
                      {
                        "type": "ArrowFunctionExpression",
                        "start": 3210,
                        "end": 3283,
                        "loc": {
                          "start": {
                            "line": 102,
                            "column": 20
                          },
                          "end": {
                            "line": 102,
                            "column": 93
                          }
                        },
                        "id": null,
                        "generator": false,
                        "expression": true,
                        "async": false,
                        "params": [
                          {
                            "type": "Identifier",
                            "start": 3210,
                            "end": 3217,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 20
                              },
                              "end": {
                                "line": 102,
                                "column": 27
                              }
                            },
                            "name": "resolve"
                          }
                        ],
                        "body": {
                          "type": "CallExpression",
                          "start": 3221,
                          "end": 3283,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 31
                            },
                            "end": {
                              "line": 102,
                              "column": 93
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3221,
                            "end": 3231,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 31
                              },
                              "end": {
                                "line": 102,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3221,
                              "end": 3226,
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 31
                                },
                                "end": {
                                  "line": 102,
                                  "column": 36
                                }
                              },
                              "name": "scope"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3227,
                              "end": 3231,
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 37
                                },
                                "end": {
                                  "line": 102,
                                  "column": 41
                                }
                              },
                              "name": "once"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 3232,
                              "end": 3273,
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 42
                                },
                                "end": {
                                  "line": 102,
                                  "column": 83
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3232,
                                "end": 3263,
                                "loc": {
                                  "start": {
                                    "line": 102,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 102,
                                    "column": 73
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3232,
                                  "end": 3253,
                                  "loc": {
                                    "start": {
                                      "line": 102,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 102,
                                      "column": 63
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 3232,
                                    "end": 3246,
                                    "loc": {
                                      "start": {
                                        "line": 102,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 102,
                                        "column": 56
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 3232,
                                      "end": 3237,
                                      "loc": {
                                        "start": {
                                          "line": 102,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 102,
                                          "column": 47
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3238,
                                      "end": 3246,
                                      "loc": {
                                        "start": {
                                          "line": 102,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 102,
                                          "column": 56
                                        }
                                      },
                                      "name": "Object3D"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3247,
                                    "end": 3253,
                                    "loc": {
                                      "start": {
                                        "line": 102,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 102,
                                        "column": 63
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3254,
                                  "end": 3263,
                                  "loc": {
                                    "start": {
                                      "line": 102,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 102,
                                      "column": 73
                                    }
                                  },
                                  "name": "Lifecycle"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3264,
                                "end": 3273,
                                "loc": {
                                  "start": {
                                    "line": 102,
                                    "column": 74
                                  },
                                  "end": {
                                    "line": 102,
                                    "column": 83
                                  }
                                },
                                "name": "ViewFound"
                              },
                              "computed": false
                            },
                            {
                              "type": "Identifier",
                              "start": 3275,
                              "end": 3282,
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 85
                                },
                                "end": {
                                  "line": 102,
                                  "column": 92
                                }
                              },
                              "name": "resolve"
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 3292,
      "end": 4024,
      "loc": {
        "start": {
          "line": 105,
          "column": 0
        },
        "end": {
          "line": 129,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 3292,
        "end": 4024,
        "loc": {
          "start": {
            "line": 105,
            "column": 0
          },
          "end": {
            "line": 129,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 3292,
          "end": 3334,
          "loc": {
            "start": {
              "line": 105,
              "column": 0
            },
            "end": {
              "line": 105,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 3292,
            "end": 3316,
            "loc": {
              "start": {
                "line": 105,
                "column": 0
              },
              "end": {
                "line": 105,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 3292,
              "end": 3306,
              "loc": {
                "start": {
                  "line": 105,
                  "column": 0
                },
                "end": {
                  "line": 105,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 3292,
                "end": 3297,
                "loc": {
                  "start": {
                    "line": 105,
                    "column": 0
                  },
                  "end": {
                    "line": 105,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 3298,
                "end": 3306,
                "loc": {
                  "start": {
                    "line": 105,
                    "column": 6
                  },
                  "end": {
                    "line": 105,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 3307,
              "end": 3316,
              "loc": {
                "start": {
                  "line": 105,
                  "column": 15
                },
                "end": {
                  "line": 105,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 3317,
            "end": 3334,
            "loc": {
              "start": {
                "line": 105,
                "column": 25
              },
              "end": {
                "line": 105,
                "column": 42
              }
            },
            "name": "_destroyRecursive"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 3337,
          "end": 4024,
          "loc": {
            "start": {
              "line": 105,
              "column": 45
            },
            "end": {
              "line": 129,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 3317,
            "end": 3334,
            "loc": {
              "start": {
                "line": 105,
                "column": 25
              },
              "end": {
                "line": 105,
                "column": 42
              }
            },
            "name": "_destroyRecursive"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 3346,
              "end": 3353,
              "loc": {
                "start": {
                  "line": 105,
                  "column": 54
                },
                "end": {
                  "line": 105,
                  "column": 61
                }
              },
              "name": "options"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 3355,
            "end": 4024,
            "loc": {
              "start": {
                "line": 105,
                "column": 63
              },
              "end": {
                "line": 129,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 3362,
                "end": 3416,
                "loc": {
                  "start": {
                    "line": 106,
                    "column": 4
                  },
                  "end": {
                    "line": 107,
                    "column": 32
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3366,
                  "end": 3381,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 8
                    },
                    "end": {
                      "line": 106,
                      "column": 23
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "UnaryExpression",
                    "start": 3367,
                    "end": 3381,
                    "loc": {
                      "start": {
                        "line": 106,
                        "column": 9
                      },
                      "end": {
                        "line": 106,
                        "column": 23
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 3368,
                      "end": 3381,
                      "loc": {
                        "start": {
                          "line": 106,
                          "column": 10
                        },
                        "end": {
                          "line": 106,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 3368,
                        "end": 3372,
                        "loc": {
                          "start": {
                            "line": 106,
                            "column": 10
                          },
                          "end": {
                            "line": 106,
                            "column": 14
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3373,
                        "end": 3381,
                        "loc": {
                          "start": {
                            "line": 106,
                            "column": 15
                          },
                          "end": {
                            "line": 106,
                            "column": 23
                          }
                        },
                        "name": "geometry"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 3392,
                  "end": 3416,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 8
                    },
                    "end": {
                      "line": 107,
                      "column": 32
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 3392,
                    "end": 3415,
                    "loc": {
                      "start": {
                        "line": 107,
                        "column": 8
                      },
                      "end": {
                        "line": 107,
                        "column": 31
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 3392,
                      "end": 3413,
                      "loc": {
                        "start": {
                          "line": 107,
                          "column": 8
                        },
                        "end": {
                          "line": 107,
                          "column": 29
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 3392,
                        "end": 3405,
                        "loc": {
                          "start": {
                            "line": 107,
                            "column": 8
                          },
                          "end": {
                            "line": 107,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 3392,
                          "end": 3396,
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 8
                            },
                            "end": {
                              "line": 107,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3397,
                          "end": 3405,
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 13
                            },
                            "end": {
                              "line": 107,
                              "column": 21
                            }
                          },
                          "name": "geometry"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3406,
                        "end": 3413,
                        "loc": {
                          "start": {
                            "line": 107,
                            "column": 22
                          },
                          "end": {
                            "line": 107,
                            "column": 29
                          }
                        },
                        "name": "dispose"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 3424,
                "end": 3478,
                "loc": {
                  "start": {
                    "line": 109,
                    "column": 4
                  },
                  "end": {
                    "line": 110,
                    "column": 32
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3428,
                  "end": 3443,
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 8
                    },
                    "end": {
                      "line": 109,
                      "column": 23
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "UnaryExpression",
                    "start": 3429,
                    "end": 3443,
                    "loc": {
                      "start": {
                        "line": 109,
                        "column": 9
                      },
                      "end": {
                        "line": 109,
                        "column": 23
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 3430,
                      "end": 3443,
                      "loc": {
                        "start": {
                          "line": 109,
                          "column": 10
                        },
                        "end": {
                          "line": 109,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 3430,
                        "end": 3434,
                        "loc": {
                          "start": {
                            "line": 109,
                            "column": 10
                          },
                          "end": {
                            "line": 109,
                            "column": 14
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3435,
                        "end": 3443,
                        "loc": {
                          "start": {
                            "line": 109,
                            "column": 15
                          },
                          "end": {
                            "line": 109,
                            "column": 23
                          }
                        },
                        "name": "material"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 3454,
                  "end": 3478,
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 8
                    },
                    "end": {
                      "line": 110,
                      "column": 32
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 3454,
                    "end": 3477,
                    "loc": {
                      "start": {
                        "line": 110,
                        "column": 8
                      },
                      "end": {
                        "line": 110,
                        "column": 31
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 3454,
                      "end": 3475,
                      "loc": {
                        "start": {
                          "line": 110,
                          "column": 8
                        },
                        "end": {
                          "line": 110,
                          "column": 29
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 3454,
                        "end": 3467,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 8
                          },
                          "end": {
                            "line": 110,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 3454,
                          "end": 3458,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 8
                            },
                            "end": {
                              "line": 110,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3459,
                          "end": 3467,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 13
                            },
                            "end": {
                              "line": 110,
                              "column": 21
                            }
                          },
                          "name": "material"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3468,
                        "end": 3475,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 22
                          },
                          "end": {
                            "line": 110,
                            "column": 29
                          }
                        },
                        "name": "dispose"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 3486,
                "end": 3726,
                "loc": {
                  "start": {
                    "line": 112,
                    "column": 4
                  },
                  "end": {
                    "line": 118,
                    "column": 5
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3490,
                  "end": 3506,
                  "loc": {
                    "start": {
                      "line": 112,
                      "column": 8
                    },
                    "end": {
                      "line": 112,
                      "column": 24
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "UnaryExpression",
                    "start": 3491,
                    "end": 3506,
                    "loc": {
                      "start": {
                        "line": 112,
                        "column": 9
                      },
                      "end": {
                        "line": 112,
                        "column": 24
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 3492,
                      "end": 3506,
                      "loc": {
                        "start": {
                          "line": 112,
                          "column": 10
                        },
                        "end": {
                          "line": 112,
                          "column": 24
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 3492,
                        "end": 3496,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 10
                          },
                          "end": {
                            "line": 112,
                            "column": 14
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3497,
                        "end": 3506,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 15
                          },
                          "end": {
                            "line": 112,
                            "column": 24
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 3508,
                  "end": 3726,
                  "loc": {
                    "start": {
                      "line": 112,
                      "column": 26
                    },
                    "end": {
                      "line": 118,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 3519,
                      "end": 3578,
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 8
                        },
                        "end": {
                          "line": 113,
                          "column": 67
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3519,
                        "end": 3577,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 8
                          },
                          "end": {
                            "line": 113,
                            "column": 66
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3519,
                          "end": 3545,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 8
                            },
                            "end": {
                              "line": 113,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3519,
                            "end": 3537,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 8
                              },
                              "end": {
                                "line": 113,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 3519,
                              "end": 3533,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 8
                                },
                                "end": {
                                  "line": 113,
                                  "column": 22
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3519,
                                "end": 3523,
                                "loc": {
                                  "start": {
                                    "line": 113,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 113,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3524,
                                "end": 3533,
                                "loc": {
                                  "start": {
                                    "line": 113,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 113,
                                    "column": 22
                                  }
                                },
                                "name": "materials"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3534,
                              "end": 3537,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 23
                                },
                                "end": {
                                  "line": 113,
                                  "column": 26
                                }
                              },
                              "name": "all"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3538,
                            "end": 3545,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 27
                              },
                              "end": {
                                "line": 113,
                                "column": 34
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 3546,
                            "end": 3576,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 35
                              },
                              "end": {
                                "line": 113,
                                "column": 65
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 3546,
                                "end": 3554,
                                "loc": {
                                  "start": {
                                    "line": 113,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 113,
                                    "column": 43
                                  }
                                },
                                "name": "material"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 3558,
                              "end": 3576,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 47
                                },
                                "end": {
                                  "line": 113,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3558,
                                "end": 3574,
                                "loc": {
                                  "start": {
                                    "line": 113,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 113,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3558,
                                  "end": 3566,
                                  "loc": {
                                    "start": {
                                      "line": 113,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 113,
                                      "column": 55
                                    }
                                  },
                                  "name": "material"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3567,
                                  "end": 3574,
                                  "loc": {
                                    "start": {
                                      "line": 113,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 113,
                                      "column": 63
                                    }
                                  },
                                  "name": "dispose"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3588,
                      "end": 3612,
                      "loc": {
                        "start": {
                          "line": 114,
                          "column": 8
                        },
                        "end": {
                          "line": 114,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3588,
                        "end": 3611,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 8
                          },
                          "end": {
                            "line": 114,
                            "column": 31
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3588,
                          "end": 3606,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 8
                            },
                            "end": {
                              "line": 114,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3588,
                            "end": 3602,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 8
                              },
                              "end": {
                                "line": 114,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3588,
                              "end": 3592,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 8
                                },
                                "end": {
                                  "line": 114,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3593,
                              "end": 3602,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 13
                                },
                                "end": {
                                  "line": 114,
                                  "column": 22
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3603,
                            "end": 3606,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 23
                              },
                              "end": {
                                "line": 114,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 3609,
                          "end": 3611,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 29
                            },
                            "end": {
                              "line": 114,
                              "column": 31
                            }
                          },
                          "elements": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3622,
                      "end": 3649,
                      "loc": {
                        "start": {
                          "line": 115,
                          "column": 8
                        },
                        "end": {
                          "line": 115,
                          "column": 35
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3622,
                        "end": 3648,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 8
                          },
                          "end": {
                            "line": 115,
                            "column": 34
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3622,
                          "end": 3643,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 8
                            },
                            "end": {
                              "line": 115,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3622,
                            "end": 3636,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 8
                              },
                              "end": {
                                "line": 115,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3622,
                              "end": 3626,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 8
                                },
                                "end": {
                                  "line": 115,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3627,
                              "end": 3636,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 13
                                },
                                "end": {
                                  "line": 115,
                                  "column": 22
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3637,
                            "end": 3643,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 23
                              },
                              "end": {
                                "line": 115,
                                "column": 29
                              }
                            },
                            "name": "meshes"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 3646,
                          "end": 3648,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 32
                            },
                            "end": {
                              "line": 115,
                              "column": 34
                            }
                          },
                          "elements": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3659,
                      "end": 3685,
                      "loc": {
                        "start": {
                          "line": 116,
                          "column": 8
                        },
                        "end": {
                          "line": 116,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3659,
                        "end": 3684,
                        "loc": {
                          "start": {
                            "line": 116,
                            "column": 8
                          },
                          "end": {
                            "line": 116,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3659,
                          "end": 3679,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 8
                            },
                            "end": {
                              "line": 116,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3659,
                            "end": 3673,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 8
                              },
                              "end": {
                                "line": 116,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3659,
                              "end": 3663,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 8
                                },
                                "end": {
                                  "line": 116,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3664,
                              "end": 3673,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 13
                                },
                                "end": {
                                  "line": 116,
                                  "column": 22
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3674,
                            "end": 3679,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 23
                              },
                              "end": {
                                "line": 116,
                                "column": 28
                              }
                            },
                            "name": "lines"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 3682,
                          "end": 3684,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 31
                            },
                            "end": {
                              "line": 116,
                              "column": 33
                            }
                          },
                          "elements": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3695,
                      "end": 3719,
                      "loc": {
                        "start": {
                          "line": 117,
                          "column": 8
                        },
                        "end": {
                          "line": 117,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3695,
                        "end": 3718,
                        "loc": {
                          "start": {
                            "line": 117,
                            "column": 8
                          },
                          "end": {
                            "line": 117,
                            "column": 31
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3695,
                          "end": 3706,
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 8
                            },
                            "end": {
                              "line": 117,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3695,
                            "end": 3699,
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 8
                              },
                              "end": {
                                "line": 117,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3700,
                            "end": 3706,
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 13
                              },
                              "end": {
                                "line": 117,
                                "column": 19
                              }
                            },
                            "name": "bounds"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 3709,
                          "end": 3718,
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 22
                            },
                            "end": {
                              "line": 117,
                              "column": 31
                            }
                          },
                          "name": "undefined"
                        }
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 3734,
                "end": 3753,
                "loc": {
                  "start": {
                    "line": 120,
                    "column": 4
                  },
                  "end": {
                    "line": 120,
                    "column": 23
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 3734,
                  "end": 3752,
                  "loc": {
                    "start": {
                      "line": 120,
                      "column": 4
                    },
                    "end": {
                      "line": 120,
                      "column": 22
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 3734,
                    "end": 3747,
                    "loc": {
                      "start": {
                        "line": 120,
                        "column": 4
                      },
                      "end": {
                        "line": 120,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 3734,
                      "end": 3738,
                      "loc": {
                        "start": {
                          "line": 120,
                          "column": 4
                        },
                        "end": {
                          "line": 120,
                          "column": 8
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 3739,
                      "end": 3747,
                      "loc": {
                        "start": {
                          "line": 120,
                          "column": 9
                        },
                        "end": {
                          "line": 120,
                          "column": 17
                        }
                      },
                      "name": "userData"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 3750,
                    "end": 3752,
                    "loc": {
                      "start": {
                        "line": 120,
                        "column": 20
                      },
                      "end": {
                        "line": 120,
                        "column": 22
                      }
                    },
                    "properties": []
                  }
                },
                "trailingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Remove children",
                    "start": 3761,
                    "end": 3779,
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 4
                      },
                      "end": {
                        "line": 122,
                        "column": 22
                      }
                    },
                    "range": [
                      3761,
                      3779
                    ]
                  }
                ]
              },
              {
                "type": "IfStatement",
                "start": 3785,
                "end": 4021,
                "loc": {
                  "start": {
                    "line": 123,
                    "column": 4
                  },
                  "end": {
                    "line": 128,
                    "column": 5
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3789,
                  "end": 3803,
                  "loc": {
                    "start": {
                      "line": 123,
                      "column": 8
                    },
                    "end": {
                      "line": 123,
                      "column": 22
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "MemberExpression",
                    "start": 3790,
                    "end": 3803,
                    "loc": {
                      "start": {
                        "line": 123,
                        "column": 9
                      },
                      "end": {
                        "line": 123,
                        "column": 22
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 3790,
                      "end": 3797,
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 9
                        },
                        "end": {
                          "line": 123,
                          "column": 16
                        }
                      },
                      "name": "options",
                      "leadingComments": null
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 3798,
                      "end": 3803,
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 17
                        },
                        "end": {
                          "line": 123,
                          "column": 22
                        }
                      },
                      "name": "async"
                    },
                    "computed": false,
                    "leadingComments": null
                  },
                  "leadingComments": null
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 3805,
                  "end": 3922,
                  "loc": {
                    "start": {
                      "line": 123,
                      "column": 24
                    },
                    "end": {
                      "line": 126,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ForStatement",
                      "start": 3816,
                      "end": 3915,
                      "loc": {
                        "start": {
                          "line": 124,
                          "column": 8
                        },
                        "end": {
                          "line": 125,
                          "column": 46
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 3821,
                        "end": 3853,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 13
                          },
                          "end": {
                            "line": 124,
                            "column": 45
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 3825,
                            "end": 3853,
                            "loc": {
                              "start": {
                                "line": 124,
                                "column": 17
                              },
                              "end": {
                                "line": 124,
                                "column": 45
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 3825,
                              "end": 3826,
                              "loc": {
                                "start": {
                                  "line": 124,
                                  "column": 17
                                },
                                "end": {
                                  "line": 124,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "BinaryExpression",
                              "start": 3829,
                              "end": 3853,
                              "loc": {
                                "start": {
                                  "line": 124,
                                  "column": 21
                                },
                                "end": {
                                  "line": 124,
                                  "column": 45
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 3829,
                                "end": 3849,
                                "loc": {
                                  "start": {
                                    "line": 124,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 124,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3829,
                                  "end": 3842,
                                  "loc": {
                                    "start": {
                                      "line": 124,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 124,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3829,
                                    "end": 3833,
                                    "loc": {
                                      "start": {
                                        "line": 124,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 124,
                                        "column": 25
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3834,
                                    "end": 3842,
                                    "loc": {
                                      "start": {
                                        "line": 124,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 124,
                                        "column": 34
                                      }
                                    },
                                    "name": "children"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3843,
                                  "end": 3849,
                                  "loc": {
                                    "start": {
                                      "line": 124,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 124,
                                      "column": 41
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "operator": "-",
                              "right": {
                                "type": "Literal",
                                "start": 3852,
                                "end": 3853,
                                "loc": {
                                  "start": {
                                    "line": 124,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 124,
                                    "column": 45
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              }
                            }
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 3855,
                        "end": 3861,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 47
                          },
                          "end": {
                            "line": 124,
                            "column": 53
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 3855,
                          "end": 3856,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 47
                            },
                            "end": {
                              "line": 124,
                              "column": 48
                            }
                          },
                          "name": "i"
                        },
                        "operator": ">=",
                        "right": {
                          "type": "Literal",
                          "start": 3860,
                          "end": 3861,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 52
                            },
                            "end": {
                              "line": 124,
                              "column": 53
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 3863,
                        "end": 3866,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 55
                          },
                          "end": {
                            "line": 124,
                            "column": 58
                          }
                        },
                        "operator": "--",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 3863,
                          "end": 3864,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 55
                            },
                            "end": {
                              "line": 124,
                              "column": 56
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 3881,
                        "end": 3915,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 12
                          },
                          "end": {
                            "line": 125,
                            "column": 46
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 3881,
                          "end": 3914,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 12
                            },
                            "end": {
                              "line": 125,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3881,
                            "end": 3905,
                            "loc": {
                              "start": {
                                "line": 125,
                                "column": 12
                              },
                              "end": {
                                "line": 125,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 3881,
                              "end": 3897,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 12
                                },
                                "end": {
                                  "line": 125,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3881,
                                "end": 3894,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3881,
                                  "end": 3885,
                                  "loc": {
                                    "start": {
                                      "line": 125,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 125,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3886,
                                  "end": 3894,
                                  "loc": {
                                    "start": {
                                      "line": 125,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 125,
                                      "column": 25
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3895,
                                "end": 3896,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 27
                                  }
                                },
                                "name": "i"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3898,
                              "end": 3905,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 29
                                },
                                "end": {
                                  "line": 125,
                                  "column": 36
                                }
                              },
                              "name": "destroy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 3906,
                              "end": 3913,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 37
                                },
                                "end": {
                                  "line": 125,
                                  "column": 44
                                }
                              },
                              "name": "options"
                            }
                          ]
                        }
                      }
                    }
                  ]
                },
                "alternate": {
                  "type": "BlockStatement",
                  "start": 3928,
                  "end": 4021,
                  "loc": {
                    "start": {
                      "line": 126,
                      "column": 11
                    },
                    "end": {
                      "line": 128,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 3939,
                      "end": 4014,
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 8
                        },
                        "end": {
                          "line": 127,
                          "column": 83
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 3946,
                        "end": 4014,
                        "loc": {
                          "start": {
                            "line": 127,
                            "column": 15
                          },
                          "end": {
                            "line": 127,
                            "column": 83
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3946,
                          "end": 3957,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 15
                            },
                            "end": {
                              "line": 127,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 3946,
                            "end": 3953,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 15
                              },
                              "end": {
                                "line": 127,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3954,
                            "end": 3957,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 23
                              },
                              "end": {
                                "line": 127,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 3958,
                            "end": 4013,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 27
                              },
                              "end": {
                                "line": 127,
                                "column": 82
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 3958,
                              "end": 3975,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 27
                                },
                                "end": {
                                  "line": 127,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3958,
                                "end": 3971,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 40
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3958,
                                  "end": 3962,
                                  "loc": {
                                    "start": {
                                      "line": 127,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 127,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3963,
                                  "end": 3971,
                                  "loc": {
                                    "start": {
                                      "line": 127,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 127,
                                      "column": 40
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3972,
                                "end": 3975,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 44
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 3976,
                                "end": 4012,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 81
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 3976,
                                    "end": 3981,
                                    "loc": {
                                      "start": {
                                        "line": 127,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 127,
                                        "column": 50
                                      }
                                    },
                                    "name": "child"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 3985,
                                  "end": 4012,
                                  "loc": {
                                    "start": {
                                      "line": 127,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 127,
                                      "column": 81
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 3985,
                                    "end": 4003,
                                    "loc": {
                                      "start": {
                                        "line": 127,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 127,
                                        "column": 72
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 3985,
                                      "end": 3990,
                                      "loc": {
                                        "start": {
                                          "line": 127,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 127,
                                          "column": 59
                                        }
                                      },
                                      "name": "child"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3991,
                                      "end": 4003,
                                      "loc": {
                                        "start": {
                                          "line": 127,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 127,
                                          "column": 72
                                        }
                                      },
                                      "name": "destroyAsync"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 4004,
                                      "end": 4011,
                                      "loc": {
                                        "start": {
                                          "line": 127,
                                          "column": 73
                                        },
                                        "end": {
                                          "line": 127,
                                          "column": 80
                                        }
                                      },
                                      "name": "options"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "leadingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Remove children",
                    "start": 3761,
                    "end": 3779,
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 4
                      },
                      "end": {
                        "line": 122,
                        "column": 22
                      }
                    },
                    "range": [
                      3761,
                      3779
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 4028,
      "end": 4558,
      "loc": {
        "start": {
          "line": 131,
          "column": 0
        },
        "end": {
          "line": 140,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 4028,
        "end": 4558,
        "loc": {
          "start": {
            "line": 131,
            "column": 0
          },
          "end": {
            "line": 140,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 4028,
          "end": 4065,
          "loc": {
            "start": {
              "line": 131,
              "column": 0
            },
            "end": {
              "line": 131,
              "column": 37
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 4028,
            "end": 4052,
            "loc": {
              "start": {
                "line": 131,
                "column": 0
              },
              "end": {
                "line": 131,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 4028,
              "end": 4042,
              "loc": {
                "start": {
                  "line": 131,
                  "column": 0
                },
                "end": {
                  "line": 131,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 4028,
                "end": 4033,
                "loc": {
                  "start": {
                    "line": 131,
                    "column": 0
                  },
                  "end": {
                    "line": 131,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 4034,
                "end": 4042,
                "loc": {
                  "start": {
                    "line": 131,
                    "column": 6
                  },
                  "end": {
                    "line": 131,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 4043,
              "end": 4052,
              "loc": {
                "start": {
                  "line": 131,
                  "column": 15
                },
                "end": {
                  "line": 131,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 4053,
            "end": 4065,
            "loc": {
              "start": {
                "line": 131,
                "column": 25
              },
              "end": {
                "line": 131,
                "column": 37
              }
            },
            "name": "destroyAsync"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 4068,
          "end": 4558,
          "loc": {
            "start": {
              "line": 131,
              "column": 40
            },
            "end": {
              "line": 140,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 4053,
            "end": 4065,
            "loc": {
              "start": {
                "line": 131,
                "column": 25
              },
              "end": {
                "line": 131,
                "column": 37
              }
            },
            "name": "destroyAsync"
          },
          "generator": false,
          "expression": false,
          "async": true,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 4083,
              "end": 4095,
              "loc": {
                "start": {
                  "line": 131,
                  "column": 55
                },
                "end": {
                  "line": 131,
                  "column": 67
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 4083,
                "end": 4090,
                "loc": {
                  "start": {
                    "line": 131,
                    "column": 55
                  },
                  "end": {
                    "line": 131,
                    "column": 62
                  }
                },
                "name": "options"
              },
              "right": {
                "type": "ObjectExpression",
                "start": 4093,
                "end": 4095,
                "loc": {
                  "start": {
                    "line": 131,
                    "column": 65
                  },
                  "end": {
                    "line": 131,
                    "column": 67
                  }
                },
                "properties": []
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 4097,
            "end": 4558,
            "loc": {
              "start": {
                "line": 131,
                "column": 69
              },
              "end": {
                "line": 140,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 4104,
                "end": 4189,
                "loc": {
                  "start": {
                    "line": 132,
                    "column": 4
                  },
                  "end": {
                    "line": 132,
                    "column": 89
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 4104,
                  "end": 4188,
                  "loc": {
                    "start": {
                      "line": 132,
                      "column": 4
                    },
                    "end": {
                      "line": 132,
                      "column": 88
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 4104,
                    "end": 4111,
                    "loc": {
                      "start": {
                        "line": 132,
                        "column": 4
                      },
                      "end": {
                        "line": 132,
                        "column": 11
                      }
                    },
                    "name": "options"
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 4114,
                    "end": 4188,
                    "loc": {
                      "start": {
                        "line": 132,
                        "column": 14
                      },
                      "end": {
                        "line": 132,
                        "column": 88
                      }
                    },
                    "properties": [
                      {
                        "type": "Property",
                        "start": 4116,
                        "end": 4126,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 16
                          },
                          "end": {
                            "line": 132,
                            "column": 26
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4116,
                          "end": 4120,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 16
                            },
                            "end": {
                              "line": 132,
                              "column": 20
                            }
                          },
                          "name": "keep"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4122,
                          "end": 4126,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 22
                            },
                            "end": {
                              "line": 132,
                              "column": 26
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4128,
                        "end": 4138,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 28
                          },
                          "end": {
                            "line": 132,
                            "column": 38
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4128,
                          "end": 4132,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 28
                            },
                            "end": {
                              "line": 132,
                              "column": 32
                            }
                          },
                          "name": "data"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4134,
                          "end": 4138,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 34
                            },
                            "end": {
                              "line": 132,
                              "column": 38
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4140,
                        "end": 4157,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 40
                          },
                          "end": {
                            "line": 132,
                            "column": 57
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4140,
                          "end": 4151,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 40
                            },
                            "end": {
                              "line": 132,
                              "column": 51
                            }
                          },
                          "name": "interaction"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4153,
                          "end": 4157,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 53
                            },
                            "end": {
                              "line": 132,
                              "column": 57
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4159,
                        "end": 4174,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 59
                          },
                          "end": {
                            "line": 132,
                            "column": 74
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4159,
                          "end": 4168,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 59
                            },
                            "end": {
                              "line": 132,
                              "column": 68
                            }
                          },
                          "name": "listeners"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4170,
                          "end": 4174,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 70
                            },
                            "end": {
                              "line": 132,
                              "column": 74
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "SpreadProperty",
                        "start": 4176,
                        "end": 4186,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 76
                          },
                          "end": {
                            "line": 132,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 4179,
                          "end": 4186,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 79
                            },
                            "end": {
                              "line": 132,
                              "column": 86
                            }
                          },
                          "name": "options"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 4192,
                "end": 4230,
                "loc": {
                  "start": {
                    "line": 133,
                    "column": 1
                  },
                  "end": {
                    "line": 133,
                    "column": 39
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 4196,
                  "end": 4221,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 5
                    },
                    "end": {
                      "line": 133,
                      "column": 30
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4196,
                    "end": 4208,
                    "loc": {
                      "start": {
                        "line": 133,
                        "column": 5
                      },
                      "end": {
                        "line": 133,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4196,
                      "end": 4203,
                      "loc": {
                        "start": {
                          "line": 133,
                          "column": 5
                        },
                        "end": {
                          "line": 133,
                          "column": 12
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4204,
                      "end": 4208,
                      "loc": {
                        "start": {
                          "line": 133,
                          "column": 13
                        },
                        "end": {
                          "line": 133,
                          "column": 17
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "MemberExpression",
                    "start": 4212,
                    "end": 4221,
                    "loc": {
                      "start": {
                        "line": 133,
                        "column": 21
                      },
                      "end": {
                        "line": 133,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4212,
                      "end": 4216,
                      "loc": {
                        "start": {
                          "line": 133,
                          "column": 21
                        },
                        "end": {
                          "line": 133,
                          "column": 25
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4217,
                      "end": 4221,
                      "loc": {
                        "start": {
                          "line": 133,
                          "column": 26
                        },
                        "end": {
                          "line": 133,
                          "column": 30
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 4223,
                  "end": 4230,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 32
                    },
                    "end": {
                      "line": 133,
                      "column": 39
                    }
                  },
                  "argument": null
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 4236,
                "end": 4310,
                "loc": {
                  "start": {
                    "line": 134,
                    "column": 4
                  },
                  "end": {
                    "line": 134,
                    "column": 78
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4236,
                  "end": 4309,
                  "loc": {
                    "start": {
                      "line": 134,
                      "column": 4
                    },
                    "end": {
                      "line": 134,
                      "column": 77
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4236,
                    "end": 4248,
                    "loc": {
                      "start": {
                        "line": 134,
                        "column": 4
                      },
                      "end": {
                        "line": 134,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4236,
                      "end": 4243,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 4
                        },
                        "end": {
                          "line": 134,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4244,
                      "end": 4248,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 12
                        },
                        "end": {
                          "line": 134,
                          "column": 16
                        }
                      },
                      "name": "data"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "AwaitExpression",
                    "start": 4252,
                    "end": 4309,
                    "loc": {
                      "start": {
                        "line": 134,
                        "column": 20
                      },
                      "end": {
                        "line": 134,
                        "column": 77
                      }
                    },
                    "all": false,
                    "argument": {
                      "type": "CallExpression",
                      "start": 4258,
                      "end": 4309,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 26
                        },
                        "end": {
                          "line": 134,
                          "column": 77
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 4258,
                        "end": 4280,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 26
                          },
                          "end": {
                            "line": 134,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 4258,
                          "end": 4262,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 26
                            },
                            "end": {
                              "line": 134,
                              "column": 30
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4263,
                          "end": 4280,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 31
                            },
                            "end": {
                              "line": 134,
                              "column": 48
                            }
                          },
                          "name": "_destroyRecursive"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ObjectExpression",
                          "start": 4281,
                          "end": 4308,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 49
                            },
                            "end": {
                              "line": 134,
                              "column": 76
                            }
                          },
                          "properties": [
                            {
                              "type": "SpreadProperty",
                              "start": 4283,
                              "end": 4293,
                              "loc": {
                                "start": {
                                  "line": 134,
                                  "column": 51
                                },
                                "end": {
                                  "line": 134,
                                  "column": 61
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 4286,
                                "end": 4293,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 61
                                  }
                                },
                                "name": "options"
                              }
                            },
                            {
                              "type": "Property",
                              "start": 4295,
                              "end": 4306,
                              "loc": {
                                "start": {
                                  "line": 134,
                                  "column": 63
                                },
                                "end": {
                                  "line": 134,
                                  "column": 74
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "key": {
                                "type": "Identifier",
                                "start": 4295,
                                "end": 4300,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 68
                                  }
                                },
                                "name": "async"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 4302,
                                "end": 4306,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 74
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              },
                              "kind": "init"
                            }
                          ]
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4316,
                "end": 4364,
                "loc": {
                  "start": {
                    "line": 135,
                    "column": 4
                  },
                  "end": {
                    "line": 135,
                    "column": 52
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4316,
                  "end": 4363,
                  "loc": {
                    "start": {
                      "line": 135,
                      "column": 4
                    },
                    "end": {
                      "line": 135,
                      "column": 51
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4316,
                    "end": 4335,
                    "loc": {
                      "start": {
                        "line": 135,
                        "column": 4
                      },
                      "end": {
                        "line": 135,
                        "column": 23
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4316,
                      "end": 4323,
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 4
                        },
                        "end": {
                          "line": 135,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4324,
                      "end": 4335,
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 12
                        },
                        "end": {
                          "line": 135,
                          "column": 23
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4339,
                    "end": 4363,
                    "loc": {
                      "start": {
                        "line": 135,
                        "column": 27
                      },
                      "end": {
                        "line": 135,
                        "column": 51
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4339,
                      "end": 4361,
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 27
                        },
                        "end": {
                          "line": 135,
                          "column": 49
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4339,
                        "end": 4343,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 27
                          },
                          "end": {
                            "line": 135,
                            "column": 31
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4344,
                        "end": 4361,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 32
                          },
                          "end": {
                            "line": 135,
                            "column": 49
                          }
                        },
                        "name": "removeInteraction"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4367,
                "end": 4419,
                "loc": {
                  "start": {
                    "line": 136,
                    "column": 1
                  },
                  "end": {
                    "line": 136,
                    "column": 53
                  }
                },
                "expression": {
                  "type": "AwaitExpression",
                  "start": 4367,
                  "end": 4418,
                  "loc": {
                    "start": {
                      "line": 136,
                      "column": 1
                    },
                    "end": {
                      "line": 136,
                      "column": 52
                    }
                  },
                  "all": false,
                  "argument": {
                    "type": "CallExpression",
                    "start": 4373,
                    "end": 4418,
                    "loc": {
                      "start": {
                        "line": 136,
                        "column": 7
                      },
                      "end": {
                        "line": 136,
                        "column": 52
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4373,
                      "end": 4382,
                      "loc": {
                        "start": {
                          "line": 136,
                          "column": 7
                        },
                        "end": {
                          "line": 136,
                          "column": 16
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4373,
                        "end": 4377,
                        "loc": {
                          "start": {
                            "line": 136,
                            "column": 7
                          },
                          "end": {
                            "line": 136,
                            "column": 11
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4378,
                        "end": 4382,
                        "loc": {
                          "start": {
                            "line": 136,
                            "column": 12
                          },
                          "end": {
                            "line": 136,
                            "column": 16
                          }
                        },
                        "name": "emit"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "MemberExpression",
                        "start": 4383,
                        "end": 4417,
                        "loc": {
                          "start": {
                            "line": 136,
                            "column": 17
                          },
                          "end": {
                            "line": 136,
                            "column": 51
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4383,
                          "end": 4407,
                          "loc": {
                            "start": {
                              "line": 136,
                              "column": 17
                            },
                            "end": {
                              "line": 136,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4383,
                            "end": 4397,
                            "loc": {
                              "start": {
                                "line": 136,
                                "column": 17
                              },
                              "end": {
                                "line": 136,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 4383,
                              "end": 4390,
                              "loc": {
                                "start": {
                                  "line": 136,
                                  "column": 17
                                },
                                "end": {
                                  "line": 136,
                                  "column": 24
                                }
                              },
                              "name": "Object3"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4391,
                              "end": 4397,
                              "loc": {
                                "start": {
                                  "line": 136,
                                  "column": 25
                                },
                                "end": {
                                  "line": 136,
                                  "column": 31
                                }
                              },
                              "name": "Events"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4398,
                            "end": 4407,
                            "loc": {
                              "start": {
                                "line": 136,
                                "column": 32
                              },
                              "end": {
                                "line": 136,
                                "column": 41
                              }
                            },
                            "name": "Lifecycle"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4408,
                          "end": 4417,
                          "loc": {
                            "start": {
                              "line": 136,
                              "column": 42
                            },
                            "end": {
                              "line": 136,
                              "column": 51
                            }
                          },
                          "name": "Destroyed"
                        },
                        "computed": false
                      }
                    ]
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4422,
                "end": 4473,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 1
                  },
                  "end": {
                    "line": 137,
                    "column": 52
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4422,
                  "end": 4472,
                  "loc": {
                    "start": {
                      "line": 137,
                      "column": 1
                    },
                    "end": {
                      "line": 137,
                      "column": 51
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4422,
                    "end": 4433,
                    "loc": {
                      "start": {
                        "line": 137,
                        "column": 1
                      },
                      "end": {
                        "line": 137,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4422,
                      "end": 4426,
                      "loc": {
                        "start": {
                          "line": 137,
                          "column": 1
                        },
                        "end": {
                          "line": 137,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4427,
                      "end": 4433,
                      "loc": {
                        "start": {
                          "line": 137,
                          "column": 6
                        },
                        "end": {
                          "line": 137,
                          "column": 12
                        }
                      },
                      "name": "parent"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "AwaitExpression",
                    "start": 4437,
                    "end": 4472,
                    "loc": {
                      "start": {
                        "line": 137,
                        "column": 16
                      },
                      "end": {
                        "line": 137,
                        "column": 51
                      }
                    },
                    "all": false,
                    "argument": {
                      "type": "CallExpression",
                      "start": 4443,
                      "end": 4472,
                      "loc": {
                        "start": {
                          "line": 137,
                          "column": 22
                        },
                        "end": {
                          "line": 137,
                          "column": 51
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 4443,
                        "end": 4466,
                        "loc": {
                          "start": {
                            "line": 137,
                            "column": 22
                          },
                          "end": {
                            "line": 137,
                            "column": 45
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4443,
                          "end": 4454,
                          "loc": {
                            "start": {
                              "line": 137,
                              "column": 22
                            },
                            "end": {
                              "line": 137,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4443,
                            "end": 4447,
                            "loc": {
                              "start": {
                                "line": 137,
                                "column": 22
                              },
                              "end": {
                                "line": 137,
                                "column": 26
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4448,
                            "end": 4454,
                            "loc": {
                              "start": {
                                "line": 137,
                                "column": 27
                              },
                              "end": {
                                "line": 137,
                                "column": 33
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4455,
                          "end": 4466,
                          "loc": {
                            "start": {
                              "line": 137,
                              "column": 34
                            },
                            "end": {
                              "line": 137,
                              "column": 45
                            }
                          },
                          "name": "removeAsync"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 4467,
                          "end": 4471,
                          "loc": {
                            "start": {
                              "line": 137,
                              "column": 46
                            },
                            "end": {
                              "line": 137,
                              "column": 50
                            }
                          }
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4479,
                "end": 4523,
                "loc": {
                  "start": {
                    "line": 138,
                    "column": 4
                  },
                  "end": {
                    "line": 138,
                    "column": 48
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4479,
                  "end": 4522,
                  "loc": {
                    "start": {
                      "line": 138,
                      "column": 4
                    },
                    "end": {
                      "line": 138,
                      "column": 47
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4479,
                    "end": 4496,
                    "loc": {
                      "start": {
                        "line": 138,
                        "column": 4
                      },
                      "end": {
                        "line": 138,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4479,
                      "end": 4486,
                      "loc": {
                        "start": {
                          "line": 138,
                          "column": 4
                        },
                        "end": {
                          "line": 138,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4487,
                      "end": 4496,
                      "loc": {
                        "start": {
                          "line": 138,
                          "column": 12
                        },
                        "end": {
                          "line": 138,
                          "column": 21
                        }
                      },
                      "name": "listeners"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4500,
                    "end": 4522,
                    "loc": {
                      "start": {
                        "line": 138,
                        "column": 25
                      },
                      "end": {
                        "line": 138,
                        "column": 47
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4500,
                      "end": 4520,
                      "loc": {
                        "start": {
                          "line": 138,
                          "column": 25
                        },
                        "end": {
                          "line": 138,
                          "column": 45
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4500,
                        "end": 4504,
                        "loc": {
                          "start": {
                            "line": 138,
                            "column": 25
                          },
                          "end": {
                            "line": 138,
                            "column": 29
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4505,
                        "end": 4520,
                        "loc": {
                          "start": {
                            "line": 138,
                            "column": 30
                          },
                          "end": {
                            "line": 138,
                            "column": 45
                          }
                        },
                        "name": "removeListeners"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4529,
                "end": 4555,
                "loc": {
                  "start": {
                    "line": 139,
                    "column": 4
                  },
                  "end": {
                    "line": 139,
                    "column": 30
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 4529,
                  "end": 4554,
                  "loc": {
                    "start": {
                      "line": 139,
                      "column": 4
                    },
                    "end": {
                      "line": 139,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 4529,
                    "end": 4552,
                    "loc": {
                      "start": {
                        "line": 139,
                        "column": 4
                      },
                      "end": {
                        "line": 139,
                        "column": 27
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4529,
                      "end": 4533,
                      "loc": {
                        "start": {
                          "line": 139,
                          "column": 4
                        },
                        "end": {
                          "line": 139,
                          "column": 8
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4534,
                      "end": 4552,
                      "loc": {
                        "start": {
                          "line": 139,
                          "column": 9
                        },
                        "end": {
                          "line": 139,
                          "column": 27
                        }
                      },
                      "name": "removeObjectTweens"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 4562,
      "end": 5035,
      "loc": {
        "start": {
          "line": 142,
          "column": 0
        },
        "end": {
          "line": 151,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 4562,
        "end": 5035,
        "loc": {
          "start": {
            "line": 142,
            "column": 0
          },
          "end": {
            "line": 151,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 4562,
          "end": 4594,
          "loc": {
            "start": {
              "line": 142,
              "column": 0
            },
            "end": {
              "line": 142,
              "column": 32
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 4562,
            "end": 4586,
            "loc": {
              "start": {
                "line": 142,
                "column": 0
              },
              "end": {
                "line": 142,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 4562,
              "end": 4576,
              "loc": {
                "start": {
                  "line": 142,
                  "column": 0
                },
                "end": {
                  "line": 142,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 4562,
                "end": 4567,
                "loc": {
                  "start": {
                    "line": 142,
                    "column": 0
                  },
                  "end": {
                    "line": 142,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 4568,
                "end": 4576,
                "loc": {
                  "start": {
                    "line": 142,
                    "column": 6
                  },
                  "end": {
                    "line": 142,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 4577,
              "end": 4586,
              "loc": {
                "start": {
                  "line": 142,
                  "column": 15
                },
                "end": {
                  "line": 142,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 4587,
            "end": 4594,
            "loc": {
              "start": {
                "line": 142,
                "column": 25
              },
              "end": {
                "line": 142,
                "column": 32
              }
            },
            "name": "destroy"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 4597,
          "end": 5035,
          "loc": {
            "start": {
              "line": 142,
              "column": 35
            },
            "end": {
              "line": 151,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 4587,
            "end": 4594,
            "loc": {
              "start": {
                "line": 142,
                "column": 25
              },
              "end": {
                "line": 142,
                "column": 32
              }
            },
            "name": "destroy"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 4606,
              "end": 4618,
              "loc": {
                "start": {
                  "line": 142,
                  "column": 44
                },
                "end": {
                  "line": 142,
                  "column": 56
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 4606,
                "end": 4613,
                "loc": {
                  "start": {
                    "line": 142,
                    "column": 44
                  },
                  "end": {
                    "line": 142,
                    "column": 51
                  }
                },
                "name": "options"
              },
              "right": {
                "type": "ObjectExpression",
                "start": 4616,
                "end": 4618,
                "loc": {
                  "start": {
                    "line": 142,
                    "column": 54
                  },
                  "end": {
                    "line": 142,
                    "column": 56
                  }
                },
                "properties": []
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 4620,
            "end": 5035,
            "loc": {
              "start": {
                "line": 142,
                "column": 58
              },
              "end": {
                "line": 151,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 4627,
                "end": 4712,
                "loc": {
                  "start": {
                    "line": 143,
                    "column": 4
                  },
                  "end": {
                    "line": 143,
                    "column": 89
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 4627,
                  "end": 4711,
                  "loc": {
                    "start": {
                      "line": 143,
                      "column": 4
                    },
                    "end": {
                      "line": 143,
                      "column": 88
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 4627,
                    "end": 4634,
                    "loc": {
                      "start": {
                        "line": 143,
                        "column": 4
                      },
                      "end": {
                        "line": 143,
                        "column": 11
                      }
                    },
                    "name": "options"
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 4637,
                    "end": 4711,
                    "loc": {
                      "start": {
                        "line": 143,
                        "column": 14
                      },
                      "end": {
                        "line": 143,
                        "column": 88
                      }
                    },
                    "properties": [
                      {
                        "type": "Property",
                        "start": 4639,
                        "end": 4649,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 16
                          },
                          "end": {
                            "line": 143,
                            "column": 26
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4639,
                          "end": 4643,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 16
                            },
                            "end": {
                              "line": 143,
                              "column": 20
                            }
                          },
                          "name": "keep"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4645,
                          "end": 4649,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 22
                            },
                            "end": {
                              "line": 143,
                              "column": 26
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4651,
                        "end": 4661,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 28
                          },
                          "end": {
                            "line": 143,
                            "column": 38
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4651,
                          "end": 4655,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 28
                            },
                            "end": {
                              "line": 143,
                              "column": 32
                            }
                          },
                          "name": "data"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4657,
                          "end": 4661,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 34
                            },
                            "end": {
                              "line": 143,
                              "column": 38
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4663,
                        "end": 4680,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 40
                          },
                          "end": {
                            "line": 143,
                            "column": 57
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4663,
                          "end": 4674,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 40
                            },
                            "end": {
                              "line": 143,
                              "column": 51
                            }
                          },
                          "name": "interaction"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4676,
                          "end": 4680,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 53
                            },
                            "end": {
                              "line": 143,
                              "column": 57
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4682,
                        "end": 4697,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 59
                          },
                          "end": {
                            "line": 143,
                            "column": 74
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4682,
                          "end": 4691,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 59
                            },
                            "end": {
                              "line": 143,
                              "column": 68
                            }
                          },
                          "name": "listeners"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4693,
                          "end": 4697,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 70
                            },
                            "end": {
                              "line": 143,
                              "column": 74
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "SpreadProperty",
                        "start": 4699,
                        "end": 4709,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 76
                          },
                          "end": {
                            "line": 143,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 4702,
                          "end": 4709,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 79
                            },
                            "end": {
                              "line": 143,
                              "column": 86
                            }
                          },
                          "name": "options"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 4715,
                "end": 4753,
                "loc": {
                  "start": {
                    "line": 144,
                    "column": 1
                  },
                  "end": {
                    "line": 144,
                    "column": 39
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 4719,
                  "end": 4744,
                  "loc": {
                    "start": {
                      "line": 144,
                      "column": 5
                    },
                    "end": {
                      "line": 144,
                      "column": 30
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4719,
                    "end": 4731,
                    "loc": {
                      "start": {
                        "line": 144,
                        "column": 5
                      },
                      "end": {
                        "line": 144,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4719,
                      "end": 4726,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 5
                        },
                        "end": {
                          "line": 144,
                          "column": 12
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4727,
                      "end": 4731,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 13
                        },
                        "end": {
                          "line": 144,
                          "column": 17
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "MemberExpression",
                    "start": 4735,
                    "end": 4744,
                    "loc": {
                      "start": {
                        "line": 144,
                        "column": 21
                      },
                      "end": {
                        "line": 144,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4735,
                      "end": 4739,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 21
                        },
                        "end": {
                          "line": 144,
                          "column": 25
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4740,
                      "end": 4744,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 26
                        },
                        "end": {
                          "line": 144,
                          "column": 30
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 4746,
                  "end": 4753,
                  "loc": {
                    "start": {
                      "line": 144,
                      "column": 32
                    },
                    "end": {
                      "line": 144,
                      "column": 39
                    }
                  },
                  "argument": null
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 4756,
                "end": 4802,
                "loc": {
                  "start": {
                    "line": 145,
                    "column": 1
                  },
                  "end": {
                    "line": 145,
                    "column": 47
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 4756,
                  "end": 4801,
                  "loc": {
                    "start": {
                      "line": 145,
                      "column": 1
                    },
                    "end": {
                      "line": 145,
                      "column": 46
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 4756,
                    "end": 4765,
                    "loc": {
                      "start": {
                        "line": 145,
                        "column": 1
                      },
                      "end": {
                        "line": 145,
                        "column": 10
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4756,
                      "end": 4760,
                      "loc": {
                        "start": {
                          "line": 145,
                          "column": 1
                        },
                        "end": {
                          "line": 145,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4761,
                      "end": 4765,
                      "loc": {
                        "start": {
                          "line": 145,
                          "column": 6
                        },
                        "end": {
                          "line": 145,
                          "column": 10
                        }
                      },
                      "name": "emit"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "MemberExpression",
                      "start": 4766,
                      "end": 4800,
                      "loc": {
                        "start": {
                          "line": 145,
                          "column": 11
                        },
                        "end": {
                          "line": 145,
                          "column": 45
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 4766,
                        "end": 4790,
                        "loc": {
                          "start": {
                            "line": 145,
                            "column": 11
                          },
                          "end": {
                            "line": 145,
                            "column": 35
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4766,
                          "end": 4780,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 11
                            },
                            "end": {
                              "line": 145,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 4766,
                            "end": 4773,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 11
                              },
                              "end": {
                                "line": 145,
                                "column": 18
                              }
                            },
                            "name": "Object3"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4774,
                            "end": 4780,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 19
                              },
                              "end": {
                                "line": 145,
                                "column": 25
                              }
                            },
                            "name": "Events"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4781,
                          "end": 4790,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 26
                            },
                            "end": {
                              "line": 145,
                              "column": 35
                            }
                          },
                          "name": "Lifecycle"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4791,
                        "end": 4800,
                        "loc": {
                          "start": {
                            "line": 145,
                            "column": 36
                          },
                          "end": {
                            "line": 145,
                            "column": 45
                          }
                        },
                        "name": "Destroyed"
                      },
                      "computed": false
                    }
                  ]
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4805,
                "end": 4845,
                "loc": {
                  "start": {
                    "line": 146,
                    "column": 1
                  },
                  "end": {
                    "line": 146,
                    "column": 41
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4805,
                  "end": 4844,
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 1
                    },
                    "end": {
                      "line": 146,
                      "column": 40
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4805,
                    "end": 4816,
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 1
                      },
                      "end": {
                        "line": 146,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4805,
                      "end": 4809,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 1
                        },
                        "end": {
                          "line": 146,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4810,
                      "end": 4816,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 6
                        },
                        "end": {
                          "line": 146,
                          "column": 12
                        }
                      },
                      "name": "parent"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4820,
                    "end": 4844,
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 16
                      },
                      "end": {
                        "line": 146,
                        "column": 40
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4820,
                      "end": 4838,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 16
                        },
                        "end": {
                          "line": 146,
                          "column": 34
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 4820,
                        "end": 4831,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 16
                          },
                          "end": {
                            "line": 146,
                            "column": 27
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 4820,
                          "end": 4824,
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 16
                            },
                            "end": {
                              "line": 146,
                              "column": 20
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4825,
                          "end": 4831,
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 21
                            },
                            "end": {
                              "line": 146,
                              "column": 27
                            }
                          },
                          "name": "parent"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4832,
                        "end": 4838,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 28
                          },
                          "end": {
                            "line": 146,
                            "column": 34
                          }
                        },
                        "name": "remove"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 4839,
                        "end": 4843,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 35
                          },
                          "end": {
                            "line": 146,
                            "column": 39
                          }
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4851,
                "end": 4899,
                "loc": {
                  "start": {
                    "line": 147,
                    "column": 4
                  },
                  "end": {
                    "line": 147,
                    "column": 52
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4851,
                  "end": 4898,
                  "loc": {
                    "start": {
                      "line": 147,
                      "column": 4
                    },
                    "end": {
                      "line": 147,
                      "column": 51
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4851,
                    "end": 4870,
                    "loc": {
                      "start": {
                        "line": 147,
                        "column": 4
                      },
                      "end": {
                        "line": 147,
                        "column": 23
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4851,
                      "end": 4858,
                      "loc": {
                        "start": {
                          "line": 147,
                          "column": 4
                        },
                        "end": {
                          "line": 147,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4859,
                      "end": 4870,
                      "loc": {
                        "start": {
                          "line": 147,
                          "column": 12
                        },
                        "end": {
                          "line": 147,
                          "column": 23
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4874,
                    "end": 4898,
                    "loc": {
                      "start": {
                        "line": 147,
                        "column": 27
                      },
                      "end": {
                        "line": 147,
                        "column": 51
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4874,
                      "end": 4896,
                      "loc": {
                        "start": {
                          "line": 147,
                          "column": 27
                        },
                        "end": {
                          "line": 147,
                          "column": 49
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4874,
                        "end": 4878,
                        "loc": {
                          "start": {
                            "line": 147,
                            "column": 27
                          },
                          "end": {
                            "line": 147,
                            "column": 31
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4879,
                        "end": 4896,
                        "loc": {
                          "start": {
                            "line": 147,
                            "column": 32
                          },
                          "end": {
                            "line": 147,
                            "column": 49
                          }
                        },
                        "name": "removeInteraction"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4905,
                "end": 4949,
                "loc": {
                  "start": {
                    "line": 148,
                    "column": 4
                  },
                  "end": {
                    "line": 148,
                    "column": 48
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4905,
                  "end": 4948,
                  "loc": {
                    "start": {
                      "line": 148,
                      "column": 4
                    },
                    "end": {
                      "line": 148,
                      "column": 47
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4905,
                    "end": 4922,
                    "loc": {
                      "start": {
                        "line": 148,
                        "column": 4
                      },
                      "end": {
                        "line": 148,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4905,
                      "end": 4912,
                      "loc": {
                        "start": {
                          "line": 148,
                          "column": 4
                        },
                        "end": {
                          "line": 148,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4913,
                      "end": 4922,
                      "loc": {
                        "start": {
                          "line": 148,
                          "column": 12
                        },
                        "end": {
                          "line": 148,
                          "column": 21
                        }
                      },
                      "name": "listeners"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4926,
                    "end": 4948,
                    "loc": {
                      "start": {
                        "line": 148,
                        "column": 25
                      },
                      "end": {
                        "line": 148,
                        "column": 47
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4926,
                      "end": 4946,
                      "loc": {
                        "start": {
                          "line": 148,
                          "column": 25
                        },
                        "end": {
                          "line": 148,
                          "column": 45
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4926,
                        "end": 4930,
                        "loc": {
                          "start": {
                            "line": 148,
                            "column": 25
                          },
                          "end": {
                            "line": 148,
                            "column": 29
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4931,
                        "end": 4946,
                        "loc": {
                          "start": {
                            "line": 148,
                            "column": 30
                          },
                          "end": {
                            "line": 148,
                            "column": 45
                          }
                        },
                        "name": "removeListeners"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4955,
                "end": 4981,
                "loc": {
                  "start": {
                    "line": 149,
                    "column": 4
                  },
                  "end": {
                    "line": 149,
                    "column": 30
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 4955,
                  "end": 4980,
                  "loc": {
                    "start": {
                      "line": 149,
                      "column": 4
                    },
                    "end": {
                      "line": 149,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 4955,
                    "end": 4978,
                    "loc": {
                      "start": {
                        "line": 149,
                        "column": 4
                      },
                      "end": {
                        "line": 149,
                        "column": 27
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4955,
                      "end": 4959,
                      "loc": {
                        "start": {
                          "line": 149,
                          "column": 4
                        },
                        "end": {
                          "line": 149,
                          "column": 8
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4960,
                      "end": 4978,
                      "loc": {
                        "start": {
                          "line": 149,
                          "column": 9
                        },
                        "end": {
                          "line": 149,
                          "column": 27
                        }
                      },
                      "name": "removeObjectTweens"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4984,
                "end": 5032,
                "loc": {
                  "start": {
                    "line": 150,
                    "column": 1
                  },
                  "end": {
                    "line": 150,
                    "column": 49
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4984,
                  "end": 5031,
                  "loc": {
                    "start": {
                      "line": 150,
                      "column": 1
                    },
                    "end": {
                      "line": 150,
                      "column": 48
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4984,
                    "end": 4996,
                    "loc": {
                      "start": {
                        "line": 150,
                        "column": 1
                      },
                      "end": {
                        "line": 150,
                        "column": 13
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4984,
                      "end": 4991,
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 1
                        },
                        "end": {
                          "line": 150,
                          "column": 8
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4992,
                      "end": 4996,
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 9
                        },
                        "end": {
                          "line": 150,
                          "column": 13
                        }
                      },
                      "name": "data"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 5000,
                    "end": 5031,
                    "loc": {
                      "start": {
                        "line": 150,
                        "column": 17
                      },
                      "end": {
                        "line": 150,
                        "column": 48
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 5000,
                      "end": 5022,
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 17
                        },
                        "end": {
                          "line": 150,
                          "column": 39
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 5000,
                        "end": 5004,
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 17
                          },
                          "end": {
                            "line": 150,
                            "column": 21
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5005,
                        "end": 5022,
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 22
                          },
                          "end": {
                            "line": 150,
                            "column": 39
                          }
                        },
                        "name": "_destroyRecursive"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 5023,
                        "end": 5030,
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 40
                          },
                          "end": {
                            "line": 150,
                            "column": 47
                          }
                        },
                        "name": "options"
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "FunctionDeclaration",
      "start": 5039,
      "end": 5667,
      "loc": {
        "start": {
          "line": 153,
          "column": 0
        },
        "end": {
          "line": 169,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 5048,
        "end": 5064,
        "loc": {
          "start": {
            "line": 153,
            "column": 9
          },
          "end": {
            "line": 153,
            "column": 25
          }
        },
        "name": "updateReferences"
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 5065,
          "end": 5071,
          "loc": {
            "start": {
              "line": 153,
              "column": 26
            },
            "end": {
              "line": 153,
              "column": 32
            }
          },
          "name": "parent"
        },
        {
          "type": "Identifier",
          "start": 5073,
          "end": 5079,
          "loc": {
            "start": {
              "line": 153,
              "column": 34
            },
            "end": {
              "line": 153,
              "column": 40
            }
          },
          "name": "object"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 5081,
        "end": 5667,
        "loc": {
          "start": {
            "line": 153,
            "column": 42
          },
          "end": {
            "line": 169,
            "column": 1
          }
        },
        "body": [
          {
            "type": "IfStatement",
            "start": 5088,
            "end": 5644,
            "loc": {
              "start": {
                "line": 154,
                "column": 4
              },
              "end": {
                "line": 167,
                "column": 5
              }
            },
            "test": {
              "type": "LogicalExpression",
              "start": 5092,
              "end": 5164,
              "loc": {
                "start": {
                  "line": 154,
                  "column": 8
                },
                "end": {
                  "line": 154,
                  "column": 80
                }
              },
              "left": {
                "type": "LogicalExpression",
                "start": 5092,
                "end": 5149,
                "loc": {
                  "start": {
                    "line": 154,
                    "column": 8
                  },
                  "end": {
                    "line": 154,
                    "column": 65
                  }
                },
                "left": {
                  "type": "BinaryExpression",
                  "start": 5092,
                  "end": 5116,
                  "loc": {
                    "start": {
                      "line": 154,
                      "column": 8
                    },
                    "end": {
                      "line": 154,
                      "column": 32
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 5092,
                    "end": 5105,
                    "loc": {
                      "start": {
                        "line": 154,
                        "column": 8
                      },
                      "end": {
                        "line": 154,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 5092,
                      "end": 5098,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 8
                        },
                        "end": {
                          "line": 154,
                          "column": 14
                        }
                      },
                      "name": "object"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 5099,
                      "end": 5105,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 15
                        },
                        "end": {
                          "line": 154,
                          "column": 21
                        }
                      },
                      "name": "parent"
                    },
                    "computed": false
                  },
                  "operator": "===",
                  "right": {
                    "type": "Identifier",
                    "start": 5110,
                    "end": 5116,
                    "loc": {
                      "start": {
                        "line": 154,
                        "column": 26
                      },
                      "end": {
                        "line": 154,
                        "column": 32
                      }
                    },
                    "name": "parent"
                  }
                },
                "operator": "&&",
                "right": {
                  "type": "BinaryExpression",
                  "start": 5120,
                  "end": 5149,
                  "loc": {
                    "start": {
                      "line": 154,
                      "column": 36
                    },
                    "end": {
                      "line": 154,
                      "column": 65
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 5120,
                    "end": 5126,
                    "loc": {
                      "start": {
                        "line": 154,
                        "column": 36
                      },
                      "end": {
                        "line": 154,
                        "column": 42
                      }
                    },
                    "name": "parent"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "MemberExpression",
                    "start": 5138,
                    "end": 5149,
                    "loc": {
                      "start": {
                        "line": 154,
                        "column": 54
                      },
                      "end": {
                        "line": 154,
                        "column": 65
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 5138,
                      "end": 5143,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 54
                        },
                        "end": {
                          "line": 154,
                          "column": 59
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 5144,
                      "end": 5149,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 60
                        },
                        "end": {
                          "line": 154,
                          "column": 65
                        }
                      },
                      "name": "Scene"
                    },
                    "computed": false
                  }
                }
              },
              "operator": "||",
              "right": {
                "type": "MemberExpression",
                "start": 5153,
                "end": 5164,
                "loc": {
                  "start": {
                    "line": 154,
                    "column": 69
                  },
                  "end": {
                    "line": 154,
                    "column": 80
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 5153,
                  "end": 5159,
                  "loc": {
                    "start": {
                      "line": 154,
                      "column": 69
                    },
                    "end": {
                      "line": 154,
                      "column": 75
                    }
                  },
                  "name": "parent"
                },
                "property": {
                  "type": "Identifier",
                  "start": 5160,
                  "end": 5164,
                  "loc": {
                    "start": {
                      "line": 154,
                      "column": 76
                    },
                    "end": {
                      "line": 154,
                      "column": 80
                    }
                  },
                  "name": "view"
                },
                "computed": false
              }
            },
            "consequent": {
              "type": "BlockStatement",
              "start": 5166,
              "end": 5467,
              "loc": {
                "start": {
                  "line": 154,
                  "column": 82
                },
                "end": {
                  "line": 161,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "ExpressionStatement",
                  "start": 5177,
                  "end": 5460,
                  "loc": {
                    "start": {
                      "line": 155,
                      "column": 8
                    },
                    "end": {
                      "line": 160,
                      "column": 11
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 5177,
                    "end": 5459,
                    "loc": {
                      "start": {
                        "line": 155,
                        "column": 8
                      },
                      "end": {
                        "line": 160,
                        "column": 10
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 5177,
                      "end": 5192,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 8
                        },
                        "end": {
                          "line": 155,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5177,
                        "end": 5183,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 8
                          },
                          "end": {
                            "line": 155,
                            "column": 14
                          }
                        },
                        "name": "object"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5184,
                        "end": 5192,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 15
                          },
                          "end": {
                            "line": 155,
                            "column": 23
                          }
                        },
                        "name": "traverse"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ArrowFunctionExpression",
                        "start": 5193,
                        "end": 5458,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 24
                          },
                          "end": {
                            "line": 160,
                            "column": 9
                          }
                        },
                        "id": null,
                        "generator": false,
                        "expression": false,
                        "async": false,
                        "params": [
                          {
                            "type": "Identifier",
                            "start": 5193,
                            "end": 5198,
                            "loc": {
                              "start": {
                                "line": 155,
                                "column": 24
                              },
                              "end": {
                                "line": 155,
                                "column": 29
                              }
                            },
                            "name": "child"
                          }
                        ],
                        "body": {
                          "type": "BlockStatement",
                          "start": 5202,
                          "end": 5458,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 33
                            },
                            "end": {
                              "line": 160,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 5217,
                              "end": 5285,
                              "loc": {
                                "start": {
                                  "line": 156,
                                  "column": 12
                                },
                                "end": {
                                  "line": 156,
                                  "column": 80
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5217,
                                "end": 5284,
                                "loc": {
                                  "start": {
                                    "line": 156,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 156,
                                    "column": 79
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5217,
                                  "end": 5228,
                                  "loc": {
                                    "start": {
                                      "line": 156,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 156,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5217,
                                    "end": 5222,
                                    "loc": {
                                      "start": {
                                        "line": 156,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 156,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5223,
                                    "end": 5228,
                                    "loc": {
                                      "start": {
                                        "line": 156,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 156,
                                        "column": 23
                                      }
                                    },
                                    "name": "scene"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "ConditionalExpression",
                                  "start": 5231,
                                  "end": 5284,
                                  "loc": {
                                    "start": {
                                      "line": 156,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 156,
                                      "column": 79
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 5231,
                                    "end": 5260,
                                    "loc": {
                                      "start": {
                                        "line": 156,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 156,
                                        "column": 55
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 5231,
                                      "end": 5237,
                                      "loc": {
                                        "start": {
                                          "line": 156,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 156,
                                          "column": 32
                                        }
                                      },
                                      "name": "parent"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 5249,
                                      "end": 5260,
                                      "loc": {
                                        "start": {
                                          "line": 156,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 156,
                                          "column": 55
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 5249,
                                        "end": 5254,
                                        "loc": {
                                          "start": {
                                            "line": 156,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 156,
                                            "column": 49
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5255,
                                        "end": 5260,
                                        "loc": {
                                          "start": {
                                            "line": 156,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 156,
                                            "column": 55
                                          }
                                        },
                                        "name": "Scene"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "consequent": {
                                    "type": "Identifier",
                                    "start": 5263,
                                    "end": 5269,
                                    "loc": {
                                      "start": {
                                        "line": 156,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 156,
                                        "column": 64
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "alternate": {
                                    "type": "MemberExpression",
                                    "start": 5272,
                                    "end": 5284,
                                    "loc": {
                                      "start": {
                                        "line": 156,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 156,
                                        "column": 79
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 5272,
                                      "end": 5278,
                                      "loc": {
                                        "start": {
                                          "line": 156,
                                          "column": 67
                                        },
                                        "end": {
                                          "line": 156,
                                          "column": 73
                                        }
                                      },
                                      "name": "parent"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5279,
                                      "end": 5284,
                                      "loc": {
                                        "start": {
                                          "line": 156,
                                          "column": 74
                                        },
                                        "end": {
                                          "line": 156,
                                          "column": 79
                                        }
                                      },
                                      "name": "scene"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5299,
                              "end": 5324,
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 12
                                },
                                "end": {
                                  "line": 157,
                                  "column": 37
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5299,
                                "end": 5323,
                                "loc": {
                                  "start": {
                                    "line": 157,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 157,
                                    "column": 36
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5299,
                                  "end": 5309,
                                  "loc": {
                                    "start": {
                                      "line": 157,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 157,
                                      "column": 22
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5299,
                                    "end": 5304,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5305,
                                    "end": 5309,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 22
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 5312,
                                  "end": 5323,
                                  "loc": {
                                    "start": {
                                      "line": 157,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 157,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5312,
                                    "end": 5318,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 31
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5319,
                                    "end": 5323,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 36
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "computed": false
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5338,
                              "end": 5367,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 12
                                },
                                "end": {
                                  "line": 158,
                                  "column": 41
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5338,
                                "end": 5366,
                                "loc": {
                                  "start": {
                                    "line": 158,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 158,
                                    "column": 40
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5338,
                                  "end": 5350,
                                  "loc": {
                                    "start": {
                                      "line": 158,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 158,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5338,
                                    "end": 5343,
                                    "loc": {
                                      "start": {
                                        "line": 158,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 158,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5344,
                                    "end": 5350,
                                    "loc": {
                                      "start": {
                                        "line": 158,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 158,
                                        "column": 24
                                      }
                                    },
                                    "name": "canvas"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 5353,
                                  "end": 5366,
                                  "loc": {
                                    "start": {
                                      "line": 158,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 158,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5353,
                                    "end": 5359,
                                    "loc": {
                                      "start": {
                                        "line": 158,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 158,
                                        "column": 33
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5360,
                                    "end": 5366,
                                    "loc": {
                                      "start": {
                                        "line": 158,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 158,
                                        "column": 40
                                      }
                                    },
                                    "name": "canvas"
                                  },
                                  "computed": false
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5381,
                              "end": 5447,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 12
                                },
                                "end": {
                                  "line": 159,
                                  "column": 78
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 5381,
                                "end": 5446,
                                "loc": {
                                  "start": {
                                    "line": 159,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 159,
                                    "column": 77
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5381,
                                  "end": 5391,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 22
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5381,
                                    "end": 5386,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5387,
                                    "end": 5391,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 22
                                      }
                                    },
                                    "name": "emit"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 5392,
                                    "end": 5433,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 64
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 5392,
                                      "end": 5423,
                                      "loc": {
                                        "start": {
                                          "line": 159,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 159,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 5392,
                                        "end": 5413,
                                        "loc": {
                                          "start": {
                                            "line": 159,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 159,
                                            "column": 44
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 5392,
                                          "end": 5406,
                                          "loc": {
                                            "start": {
                                              "line": 159,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 159,
                                              "column": 37
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 5392,
                                            "end": 5397,
                                            "loc": {
                                              "start": {
                                                "line": 159,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 159,
                                                "column": 28
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5398,
                                            "end": 5406,
                                            "loc": {
                                              "start": {
                                                "line": 159,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 159,
                                                "column": 37
                                              }
                                            },
                                            "name": "Object3D"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5407,
                                          "end": 5413,
                                          "loc": {
                                            "start": {
                                              "line": 159,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 159,
                                              "column": 44
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5414,
                                        "end": 5423,
                                        "loc": {
                                          "start": {
                                            "line": 159,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 159,
                                            "column": 54
                                          }
                                        },
                                        "name": "Lifecycle"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5424,
                                      "end": 5433,
                                      "loc": {
                                        "start": {
                                          "line": 159,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 159,
                                          "column": 64
                                        }
                                      },
                                      "name": "ViewFound"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 5435,
                                    "end": 5445,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 76
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 5435,
                                      "end": 5440,
                                      "loc": {
                                        "start": {
                                          "line": 159,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 159,
                                          "column": 71
                                        }
                                      },
                                      "name": "child"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5441,
                                      "end": 5445,
                                      "loc": {
                                        "start": {
                                          "line": 159,
                                          "column": 72
                                        },
                                        "end": {
                                          "line": 159,
                                          "column": 76
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              ]
            },
            "alternate": {
              "type": "BlockStatement",
              "start": 5473,
              "end": 5644,
              "loc": {
                "start": {
                  "line": 161,
                  "column": 11
                },
                "end": {
                  "line": 167,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "ExpressionStatement",
                  "start": 5484,
                  "end": 5637,
                  "loc": {
                    "start": {
                      "line": 162,
                      "column": 8
                    },
                    "end": {
                      "line": 166,
                      "column": 11
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 5484,
                    "end": 5636,
                    "loc": {
                      "start": {
                        "line": 162,
                        "column": 8
                      },
                      "end": {
                        "line": 166,
                        "column": 10
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 5484,
                      "end": 5499,
                      "loc": {
                        "start": {
                          "line": 162,
                          "column": 8
                        },
                        "end": {
                          "line": 162,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5484,
                        "end": 5490,
                        "loc": {
                          "start": {
                            "line": 162,
                            "column": 8
                          },
                          "end": {
                            "line": 162,
                            "column": 14
                          }
                        },
                        "name": "object"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5491,
                        "end": 5499,
                        "loc": {
                          "start": {
                            "line": 162,
                            "column": 15
                          },
                          "end": {
                            "line": 162,
                            "column": 23
                          }
                        },
                        "name": "traverse"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ArrowFunctionExpression",
                        "start": 5500,
                        "end": 5635,
                        "loc": {
                          "start": {
                            "line": 162,
                            "column": 24
                          },
                          "end": {
                            "line": 166,
                            "column": 9
                          }
                        },
                        "id": null,
                        "generator": false,
                        "expression": false,
                        "async": false,
                        "params": [
                          {
                            "type": "Identifier",
                            "start": 5500,
                            "end": 5505,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 24
                              },
                              "end": {
                                "line": 162,
                                "column": 29
                              }
                            },
                            "name": "child"
                          }
                        ],
                        "body": {
                          "type": "BlockStatement",
                          "start": 5509,
                          "end": 5635,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 33
                            },
                            "end": {
                              "line": 166,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 5524,
                              "end": 5548,
                              "loc": {
                                "start": {
                                  "line": 163,
                                  "column": 12
                                },
                                "end": {
                                  "line": 163,
                                  "column": 36
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5524,
                                "end": 5547,
                                "loc": {
                                  "start": {
                                    "line": 163,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 163,
                                    "column": 35
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5524,
                                  "end": 5535,
                                  "loc": {
                                    "start": {
                                      "line": 163,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 163,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5524,
                                    "end": 5529,
                                    "loc": {
                                      "start": {
                                        "line": 163,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 163,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5530,
                                    "end": 5535,
                                    "loc": {
                                      "start": {
                                        "line": 163,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 163,
                                        "column": 23
                                      }
                                    },
                                    "name": "scene"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 5538,
                                  "end": 5547,
                                  "loc": {
                                    "start": {
                                      "line": 163,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 163,
                                      "column": 35
                                    }
                                  },
                                  "name": "undefined"
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5562,
                              "end": 5585,
                              "loc": {
                                "start": {
                                  "line": 164,
                                  "column": 12
                                },
                                "end": {
                                  "line": 164,
                                  "column": 35
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5562,
                                "end": 5584,
                                "loc": {
                                  "start": {
                                    "line": 164,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 164,
                                    "column": 34
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5562,
                                  "end": 5572,
                                  "loc": {
                                    "start": {
                                      "line": 164,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 164,
                                      "column": 22
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5562,
                                    "end": 5567,
                                    "loc": {
                                      "start": {
                                        "line": 164,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 164,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5568,
                                    "end": 5572,
                                    "loc": {
                                      "start": {
                                        "line": 164,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 164,
                                        "column": 22
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 5575,
                                  "end": 5584,
                                  "loc": {
                                    "start": {
                                      "line": 164,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 164,
                                      "column": 34
                                    }
                                  },
                                  "name": "undefined"
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5599,
                              "end": 5624,
                              "loc": {
                                "start": {
                                  "line": 165,
                                  "column": 12
                                },
                                "end": {
                                  "line": 165,
                                  "column": 37
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5599,
                                "end": 5623,
                                "loc": {
                                  "start": {
                                    "line": 165,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 165,
                                    "column": 36
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5599,
                                  "end": 5611,
                                  "loc": {
                                    "start": {
                                      "line": 165,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 165,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5599,
                                    "end": 5604,
                                    "loc": {
                                      "start": {
                                        "line": 165,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 165,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5605,
                                    "end": 5611,
                                    "loc": {
                                      "start": {
                                        "line": 165,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 165,
                                        "column": 24
                                      }
                                    },
                                    "name": "canvas"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 5614,
                                  "end": 5623,
                                  "loc": {
                                    "start": {
                                      "line": 165,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 165,
                                      "column": 36
                                    }
                                  },
                                  "name": "undefined"
                                }
                              }
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              ]
            }
          },
          {
            "type": "ReturnStatement",
            "start": 5650,
            "end": 5664,
            "loc": {
              "start": {
                "line": 168,
                "column": 4
              },
              "end": {
                "line": 168,
                "column": 18
              }
            },
            "argument": {
              "type": "Identifier",
              "start": 5657,
              "end": 5663,
              "loc": {
                "start": {
                  "line": 168,
                  "column": 11
                },
                "end": {
                  "line": 168,
                  "column": 17
                }
              },
              "name": "object"
            }
          }
        ]
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 5671,
      "end": 6371,
      "loc": {
        "start": {
          "line": 171,
          "column": 0
        },
        "end": {
          "line": 186,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 5671,
        "end": 6371,
        "loc": {
          "start": {
            "line": 171,
            "column": 0
          },
          "end": {
            "line": 186,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 5671,
          "end": 5704,
          "loc": {
            "start": {
              "line": 171,
              "column": 0
            },
            "end": {
              "line": 171,
              "column": 33
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 5671,
            "end": 5695,
            "loc": {
              "start": {
                "line": 171,
                "column": 0
              },
              "end": {
                "line": 171,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 5671,
              "end": 5685,
              "loc": {
                "start": {
                  "line": 171,
                  "column": 0
                },
                "end": {
                  "line": 171,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 5671,
                "end": 5676,
                "loc": {
                  "start": {
                    "line": 171,
                    "column": 0
                  },
                  "end": {
                    "line": 171,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 5677,
                "end": 5685,
                "loc": {
                  "start": {
                    "line": 171,
                    "column": 6
                  },
                  "end": {
                    "line": 171,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 5686,
              "end": 5695,
              "loc": {
                "start": {
                  "line": 171,
                  "column": 15
                },
                "end": {
                  "line": 171,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 5696,
            "end": 5704,
            "loc": {
              "start": {
                "line": 171,
                "column": 25
              },
              "end": {
                "line": 171,
                "column": 33
              }
            },
            "name": "addAsync"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 5707,
          "end": 6371,
          "loc": {
            "start": {
              "line": 171,
              "column": 36
            },
            "end": {
              "line": 186,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 5696,
            "end": 5704,
            "loc": {
              "start": {
                "line": 171,
                "column": 25
              },
              "end": {
                "line": 171,
                "column": 33
              }
            },
            "name": "addAsync"
          },
          "generator": false,
          "expression": false,
          "async": true,
          "params": [
            {
              "type": "Identifier",
              "start": 5722,
              "end": 5728,
              "loc": {
                "start": {
                  "line": 171,
                  "column": 51
                },
                "end": {
                  "line": 171,
                  "column": 57
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 5730,
            "end": 6371,
            "loc": {
              "start": {
                "line": 171,
                "column": 59
              },
              "end": {
                "line": 186,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 5737,
                "end": 5800,
                "loc": {
                  "start": {
                    "line": 172,
                    "column": 4
                  },
                  "end": {
                    "line": 172,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 5737,
                  "end": 5799,
                  "loc": {
                    "start": {
                      "line": 172,
                      "column": 4
                    },
                    "end": {
                      "line": 172,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 5737,
                    "end": 5743,
                    "loc": {
                      "start": {
                        "line": 172,
                        "column": 4
                      },
                      "end": {
                        "line": 172,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 5746,
                    "end": 5799,
                    "loc": {
                      "start": {
                        "line": 172,
                        "column": 13
                      },
                      "end": {
                        "line": 172,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 5746,
                      "end": 5766,
                      "loc": {
                        "start": {
                          "line": 172,
                          "column": 13
                        },
                        "end": {
                          "line": 172,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 5746,
                        "end": 5762,
                        "loc": {
                          "start": {
                            "line": 172,
                            "column": 13
                          },
                          "end": {
                            "line": 172,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5746,
                          "end": 5755,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 13
                            },
                            "end": {
                              "line": 172,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5756,
                          "end": 5762,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 23
                            },
                            "end": {
                              "line": 172,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 5765,
                        "end": 5766,
                        "loc": {
                          "start": {
                            "line": 172,
                            "column": 32
                          },
                          "end": {
                            "line": 172,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 5769,
                      "end": 5790,
                      "loc": {
                        "start": {
                          "line": 172,
                          "column": 36
                        },
                        "end": {
                          "line": 172,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 5769,
                        "end": 5779,
                        "loc": {
                          "start": {
                            "line": 172,
                            "column": 36
                          },
                          "end": {
                            "line": 172,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5769,
                          "end": 5774,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 36
                            },
                            "end": {
                              "line": 172,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5775,
                          "end": 5779,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 42
                            },
                            "end": {
                              "line": 172,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 5780,
                          "end": 5789,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 47
                            },
                            "end": {
                              "line": 172,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 5793,
                      "end": 5799,
                      "loc": {
                        "start": {
                          "line": 172,
                          "column": 60
                        },
                        "end": {
                          "line": 172,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 5806,
                "end": 5911,
                "loc": {
                  "start": {
                    "line": 173,
                    "column": 4
                  },
                  "end": {
                    "line": 175,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 5810,
                  "end": 5831,
                  "loc": {
                    "start": {
                      "line": 173,
                      "column": 8
                    },
                    "end": {
                      "line": 173,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 5810,
                    "end": 5823,
                    "loc": {
                      "start": {
                        "line": 173,
                        "column": 8
                      },
                      "end": {
                        "line": 173,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 5810,
                      "end": 5815,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 8
                        },
                        "end": {
                          "line": 173,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 5816,
                      "end": 5823,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 14
                        },
                        "end": {
                          "line": 173,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 5824,
                      "end": 5830,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 22
                        },
                        "end": {
                          "line": 173,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 5833,
                  "end": 5911,
                  "loc": {
                    "start": {
                      "line": 173,
                      "column": 31
                    },
                    "end": {
                      "line": 175,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 5844,
                      "end": 5904,
                      "loc": {
                        "start": {
                          "line": 174,
                          "column": 8
                        },
                        "end": {
                          "line": 174,
                          "column": 68
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 5851,
                        "end": 5903,
                        "loc": {
                          "start": {
                            "line": 174,
                            "column": 15
                          },
                          "end": {
                            "line": 174,
                            "column": 67
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5851,
                          "end": 5862,
                          "loc": {
                            "start": {
                              "line": 174,
                              "column": 15
                            },
                            "end": {
                              "line": 174,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5851,
                            "end": 5858,
                            "loc": {
                              "start": {
                                "line": 174,
                                "column": 15
                              },
                              "end": {
                                "line": 174,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5859,
                            "end": 5862,
                            "loc": {
                              "start": {
                                "line": 174,
                                "column": 23
                              },
                              "end": {
                                "line": 174,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 5863,
                            "end": 5902,
                            "loc": {
                              "start": {
                                "line": 174,
                                "column": 27
                              },
                              "end": {
                                "line": 174,
                                "column": 66
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5863,
                              "end": 5873,
                              "loc": {
                                "start": {
                                  "line": 174,
                                  "column": 27
                                },
                                "end": {
                                  "line": 174,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5863,
                                "end": 5869,
                                "loc": {
                                  "start": {
                                    "line": 174,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 174,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5870,
                                "end": 5873,
                                "loc": {
                                  "start": {
                                    "line": 174,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 174,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 5874,
                                "end": 5901,
                                "loc": {
                                  "start": {
                                    "line": 174,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 174,
                                    "column": 65
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 5874,
                                    "end": 5878,
                                    "loc": {
                                      "start": {
                                        "line": 174,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 174,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 5882,
                                  "end": 5901,
                                  "loc": {
                                    "start": {
                                      "line": 174,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 174,
                                      "column": 65
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 5882,
                                    "end": 5895,
                                    "loc": {
                                      "start": {
                                        "line": 174,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 174,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5882,
                                      "end": 5886,
                                      "loc": {
                                        "start": {
                                          "line": 174,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 174,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5887,
                                      "end": 5895,
                                      "loc": {
                                        "start": {
                                          "line": 174,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 174,
                                          "column": 59
                                        }
                                      },
                                      "name": "addAsync"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 5896,
                                      "end": 5900,
                                      "loc": {
                                        "start": {
                                          "line": 174,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 174,
                                          "column": 64
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 5919,
                "end": 6368,
                "loc": {
                  "start": {
                    "line": 177,
                    "column": 4
                  },
                  "end": {
                    "line": 185,
                    "column": 5
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 5923,
                  "end": 5974,
                  "loc": {
                    "start": {
                      "line": 177,
                      "column": 8
                    },
                    "end": {
                      "line": 177,
                      "column": 59
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 5923,
                    "end": 5938,
                    "loc": {
                      "start": {
                        "line": 177,
                        "column": 8
                      },
                      "end": {
                        "line": 177,
                        "column": 23
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 5923,
                      "end": 5929,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 8
                        },
                        "end": {
                          "line": 177,
                          "column": 14
                        }
                      },
                      "name": "object"
                    },
                    "operator": "!==",
                    "right": {
                      "type": "ThisExpression",
                      "start": 5934,
                      "end": 5938,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 19
                        },
                        "end": {
                          "line": 177,
                          "column": 23
                        }
                      }
                    }
                  },
                  "operator": "&&",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 5942,
                    "end": 5974,
                    "loc": {
                      "start": {
                        "line": 177,
                        "column": 27
                      },
                      "end": {
                        "line": 177,
                        "column": 59
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 5942,
                      "end": 5948,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 27
                        },
                        "end": {
                          "line": 177,
                          "column": 33
                        }
                      },
                      "name": "object"
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "MemberExpression",
                      "start": 5960,
                      "end": 5974,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 45
                        },
                        "end": {
                          "line": 177,
                          "column": 59
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5960,
                        "end": 5965,
                        "loc": {
                          "start": {
                            "line": 177,
                            "column": 45
                          },
                          "end": {
                            "line": 177,
                            "column": 50
                          }
                        },
                        "name": "THREE"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5966,
                        "end": 5974,
                        "loc": {
                          "start": {
                            "line": 177,
                            "column": 51
                          },
                          "end": {
                            "line": 177,
                            "column": 59
                          }
                        },
                        "name": "Object3D"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 5976,
                  "end": 6368,
                  "loc": {
                    "start": {
                      "line": 177,
                      "column": 61
                    },
                    "end": {
                      "line": 185,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 5987,
                      "end": 6061,
                      "loc": {
                        "start": {
                          "line": 178,
                          "column": 8
                        },
                        "end": {
                          "line": 179,
                          "column": 52
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 5991,
                        "end": 6006,
                        "loc": {
                          "start": {
                            "line": 178,
                            "column": 12
                          },
                          "end": {
                            "line": 178,
                            "column": 27
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 5992,
                          "end": 6006,
                          "loc": {
                            "start": {
                              "line": 178,
                              "column": 13
                            },
                            "end": {
                              "line": 178,
                              "column": 27
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "MemberExpression",
                            "start": 5993,
                            "end": 6006,
                            "loc": {
                              "start": {
                                "line": 178,
                                "column": 14
                              },
                              "end": {
                                "line": 178,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5993,
                              "end": 5999,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 14
                                },
                                "end": {
                                  "line": 178,
                                  "column": 20
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6000,
                              "end": 6006,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 21
                                },
                                "end": {
                                  "line": 178,
                                  "column": 27
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 6021,
                        "end": 6061,
                        "loc": {
                          "start": {
                            "line": 179,
                            "column": 12
                          },
                          "end": {
                            "line": 179,
                            "column": 52
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 6021,
                          "end": 6060,
                          "loc": {
                            "start": {
                              "line": 179,
                              "column": 12
                            },
                            "end": {
                              "line": 179,
                              "column": 51
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 6027,
                            "end": 6060,
                            "loc": {
                              "start": {
                                "line": 179,
                                "column": 18
                              },
                              "end": {
                                "line": 179,
                                "column": 51
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6027,
                              "end": 6052,
                              "loc": {
                                "start": {
                                  "line": 179,
                                  "column": 18
                                },
                                "end": {
                                  "line": 179,
                                  "column": 43
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6027,
                                "end": 6040,
                                "loc": {
                                  "start": {
                                    "line": 179,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 179,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6027,
                                  "end": 6033,
                                  "loc": {
                                    "start": {
                                      "line": 179,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 179,
                                      "column": 24
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6034,
                                  "end": 6040,
                                  "loc": {
                                    "start": {
                                      "line": 179,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 179,
                                      "column": 31
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6041,
                                "end": 6052,
                                "loc": {
                                  "start": {
                                    "line": 179,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 179,
                                    "column": 43
                                  }
                                },
                                "name": "removeAsync"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 6053,
                                "end": 6059,
                                "loc": {
                                  "start": {
                                    "line": 179,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 179,
                                    "column": 50
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6071,
                      "end": 6092,
                      "loc": {
                        "start": {
                          "line": 180,
                          "column": 8
                        },
                        "end": {
                          "line": 180,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 6071,
                        "end": 6091,
                        "loc": {
                          "start": {
                            "line": 180,
                            "column": 8
                          },
                          "end": {
                            "line": 180,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 6071,
                          "end": 6084,
                          "loc": {
                            "start": {
                              "line": 180,
                              "column": 8
                            },
                            "end": {
                              "line": 180,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6071,
                            "end": 6077,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 8
                              },
                              "end": {
                                "line": 180,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6078,
                            "end": 6084,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 15
                              },
                              "end": {
                                "line": 180,
                                "column": 21
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ThisExpression",
                          "start": 6087,
                          "end": 6091,
                          "loc": {
                            "start": {
                              "line": 180,
                              "column": 24
                            },
                            "end": {
                              "line": 180,
                              "column": 28
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6102,
                      "end": 6153,
                      "loc": {
                        "start": {
                          "line": 181,
                          "column": 8
                        },
                        "end": {
                          "line": 181,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6102,
                        "end": 6152,
                        "loc": {
                          "start": {
                            "line": 181,
                            "column": 8
                          },
                          "end": {
                            "line": 181,
                            "column": 58
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6102,
                          "end": 6120,
                          "loc": {
                            "start": {
                              "line": 181,
                              "column": 8
                            },
                            "end": {
                              "line": 181,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 6102,
                            "end": 6115,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 8
                              },
                              "end": {
                                "line": 181,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6102,
                              "end": 6106,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 8
                                },
                                "end": {
                                  "line": 181,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6107,
                              "end": 6115,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 13
                                },
                                "end": {
                                  "line": 181,
                                  "column": 21
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6116,
                            "end": 6120,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 22
                              },
                              "end": {
                                "line": 181,
                                "column": 26
                              }
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6121,
                            "end": 6151,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 27
                              },
                              "end": {
                                "line": 181,
                                "column": 57
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 6121,
                              "end": 6137,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 27
                                },
                                "end": {
                                  "line": 181,
                                  "column": 43
                                }
                              },
                              "name": "updateReferences"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 6138,
                                "end": 6142,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 48
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 6144,
                                "end": 6150,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 56
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6163,
                      "end": 6235,
                      "loc": {
                        "start": {
                          "line": 182,
                          "column": 8
                        },
                        "end": {
                          "line": 182,
                          "column": 80
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 6163,
                        "end": 6234,
                        "loc": {
                          "start": {
                            "line": 182,
                            "column": 8
                          },
                          "end": {
                            "line": 182,
                            "column": 79
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 6169,
                          "end": 6234,
                          "loc": {
                            "start": {
                              "line": 182,
                              "column": 14
                            },
                            "end": {
                              "line": 182,
                              "column": 79
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6169,
                            "end": 6178,
                            "loc": {
                              "start": {
                                "line": 182,
                                "column": 14
                              },
                              "end": {
                                "line": 182,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6169,
                              "end": 6173,
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 14
                                },
                                "end": {
                                  "line": 182,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6174,
                              "end": 6178,
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 19
                                },
                                "end": {
                                  "line": 182,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 6179,
                              "end": 6214,
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 24
                                },
                                "end": {
                                  "line": 182,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6179,
                                "end": 6203,
                                "loc": {
                                  "start": {
                                    "line": 182,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 182,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 6179,
                                  "end": 6193,
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6179,
                                    "end": 6186,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 31
                                      }
                                    },
                                    "name": "Object3"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6187,
                                    "end": 6193,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 38
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6194,
                                  "end": 6203,
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 48
                                    }
                                  },
                                  "name": "Lifecycle"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6204,
                                "end": 6214,
                                "loc": {
                                  "start": {
                                    "line": 182,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 182,
                                    "column": 59
                                  }
                                },
                                "name": "ChildAdded"
                              },
                              "computed": false
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 6216,
                              "end": 6233,
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 61
                                },
                                "end": {
                                  "line": 182,
                                  "column": 78
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 6218,
                                  "end": 6231,
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 63
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 76
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 6218,
                                    "end": 6223,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 68
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "value": {
                                    "type": "Identifier",
                                    "start": 6225,
                                    "end": 6231,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 76
                                      }
                                    },
                                    "name": "object"
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6245,
                      "end": 6313,
                      "loc": {
                        "start": {
                          "line": 183,
                          "column": 8
                        },
                        "end": {
                          "line": 183,
                          "column": 76
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 6245,
                        "end": 6312,
                        "loc": {
                          "start": {
                            "line": 183,
                            "column": 8
                          },
                          "end": {
                            "line": 183,
                            "column": 75
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 6251,
                          "end": 6312,
                          "loc": {
                            "start": {
                              "line": 183,
                              "column": 14
                            },
                            "end": {
                              "line": 183,
                              "column": 75
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6251,
                            "end": 6262,
                            "loc": {
                              "start": {
                                "line": 183,
                                "column": 14
                              },
                              "end": {
                                "line": 183,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 6251,
                              "end": 6257,
                              "loc": {
                                "start": {
                                  "line": 183,
                                  "column": 14
                                },
                                "end": {
                                  "line": 183,
                                  "column": 20
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6258,
                              "end": 6262,
                              "loc": {
                                "start": {
                                  "line": 183,
                                  "column": 21
                                },
                                "end": {
                                  "line": 183,
                                  "column": 25
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 6263,
                              "end": 6293,
                              "loc": {
                                "start": {
                                  "line": 183,
                                  "column": 26
                                },
                                "end": {
                                  "line": 183,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6263,
                                "end": 6287,
                                "loc": {
                                  "start": {
                                    "line": 183,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 183,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 6263,
                                  "end": 6277,
                                  "loc": {
                                    "start": {
                                      "line": 183,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 183,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6263,
                                    "end": 6270,
                                    "loc": {
                                      "start": {
                                        "line": 183,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 183,
                                        "column": 33
                                      }
                                    },
                                    "name": "Object3"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6271,
                                    "end": 6277,
                                    "loc": {
                                      "start": {
                                        "line": 183,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 183,
                                        "column": 40
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6278,
                                  "end": 6287,
                                  "loc": {
                                    "start": {
                                      "line": 183,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 183,
                                      "column": 50
                                    }
                                  },
                                  "name": "Lifecycle"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6288,
                                "end": 6293,
                                "loc": {
                                  "start": {
                                    "line": 183,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 183,
                                    "column": 56
                                  }
                                },
                                "name": "Added"
                              },
                              "computed": false
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 6295,
                              "end": 6311,
                              "loc": {
                                "start": {
                                  "line": 183,
                                  "column": 58
                                },
                                "end": {
                                  "line": 183,
                                  "column": 74
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 6297,
                                  "end": 6309,
                                  "loc": {
                                    "start": {
                                      "line": 183,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 183,
                                      "column": 72
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 6297,
                                    "end": 6303,
                                    "loc": {
                                      "start": {
                                        "line": 183,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 183,
                                        "column": 66
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "value": {
                                    "type": "ThisExpression",
                                    "start": 6305,
                                    "end": 6309,
                                    "loc": {
                                      "start": {
                                        "line": 183,
                                        "column": 68
                                      },
                                      "end": {
                                        "line": 183,
                                        "column": 72
                                      }
                                    }
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6323,
                      "end": 6361,
                      "loc": {
                        "start": {
                          "line": 184,
                          "column": 8
                        },
                        "end": {
                          "line": 184,
                          "column": 46
                        }
                      },
                      "expression": {
                        "type": "LogicalExpression",
                        "start": 6323,
                        "end": 6360,
                        "loc": {
                          "start": {
                            "line": 184,
                            "column": 8
                          },
                          "end": {
                            "line": 184,
                            "column": 45
                          }
                        },
                        "left": {
                          "type": "UnaryExpression",
                          "start": 6323,
                          "end": 6334,
                          "loc": {
                            "start": {
                              "line": 184,
                              "column": 8
                            },
                            "end": {
                              "line": 184,
                              "column": 19
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 6324,
                            "end": 6334,
                            "loc": {
                              "start": {
                                "line": 184,
                                "column": 9
                              },
                              "end": {
                                "line": 184,
                                "column": 19
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 6325,
                              "end": 6334,
                              "loc": {
                                "start": {
                                  "line": 184,
                                  "column": 10
                                },
                                "end": {
                                  "line": 184,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6325,
                                "end": 6329,
                                "loc": {
                                  "start": {
                                    "line": 184,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 184,
                                    "column": 14
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6330,
                                "end": 6334,
                                "loc": {
                                  "start": {
                                    "line": 184,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 184,
                                    "column": 19
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            }
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "CallExpression",
                          "start": 6338,
                          "end": 6360,
                          "loc": {
                            "start": {
                              "line": 184,
                              "column": 23
                            },
                            "end": {
                              "line": 184,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6338,
                            "end": 6358,
                            "loc": {
                              "start": {
                                "line": 184,
                                "column": 23
                              },
                              "end": {
                                "line": 184,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6338,
                              "end": 6347,
                              "loc": {
                                "start": {
                                  "line": 184,
                                  "column": 23
                                },
                                "end": {
                                  "line": 184,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6338,
                                "end": 6342,
                                "loc": {
                                  "start": {
                                    "line": 184,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 184,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6343,
                                "end": 6347,
                                "loc": {
                                  "start": {
                                    "line": 184,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 184,
                                    "column": 32
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6348,
                              "end": 6358,
                              "loc": {
                                "start": {
                                  "line": 184,
                                  "column": 33
                                },
                                "end": {
                                  "line": 184,
                                  "column": 43
                                }
                              },
                              "name": "invalidate"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 6375,
      "end": 7036,
      "loc": {
        "start": {
          "line": 188,
          "column": 0
        },
        "end": {
          "line": 203,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 6375,
        "end": 7036,
        "loc": {
          "start": {
            "line": 188,
            "column": 0
          },
          "end": {
            "line": 203,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 6375,
          "end": 6403,
          "loc": {
            "start": {
              "line": 188,
              "column": 0
            },
            "end": {
              "line": 188,
              "column": 28
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 6375,
            "end": 6399,
            "loc": {
              "start": {
                "line": 188,
                "column": 0
              },
              "end": {
                "line": 188,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 6375,
              "end": 6389,
              "loc": {
                "start": {
                  "line": 188,
                  "column": 0
                },
                "end": {
                  "line": 188,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 6375,
                "end": 6380,
                "loc": {
                  "start": {
                    "line": 188,
                    "column": 0
                  },
                  "end": {
                    "line": 188,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 6381,
                "end": 6389,
                "loc": {
                  "start": {
                    "line": 188,
                    "column": 6
                  },
                  "end": {
                    "line": 188,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 6390,
              "end": 6399,
              "loc": {
                "start": {
                  "line": 188,
                  "column": 15
                },
                "end": {
                  "line": 188,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 6400,
            "end": 6403,
            "loc": {
              "start": {
                "line": 188,
                "column": 25
              },
              "end": {
                "line": 188,
                "column": 28
              }
            },
            "name": "add"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 6406,
          "end": 7036,
          "loc": {
            "start": {
              "line": 188,
              "column": 31
            },
            "end": {
              "line": 203,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 6400,
            "end": 6403,
            "loc": {
              "start": {
                "line": 188,
                "column": 25
              },
              "end": {
                "line": 188,
                "column": 28
              }
            },
            "name": "add"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 6415,
              "end": 6421,
              "loc": {
                "start": {
                  "line": 188,
                  "column": 40
                },
                "end": {
                  "line": 188,
                  "column": 46
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 6423,
            "end": 7036,
            "loc": {
              "start": {
                "line": 188,
                "column": 48
              },
              "end": {
                "line": 203,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 6430,
                "end": 6493,
                "loc": {
                  "start": {
                    "line": 189,
                    "column": 4
                  },
                  "end": {
                    "line": 189,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 6430,
                  "end": 6492,
                  "loc": {
                    "start": {
                      "line": 189,
                      "column": 4
                    },
                    "end": {
                      "line": 189,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 6430,
                    "end": 6436,
                    "loc": {
                      "start": {
                        "line": 189,
                        "column": 4
                      },
                      "end": {
                        "line": 189,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 6439,
                    "end": 6492,
                    "loc": {
                      "start": {
                        "line": 189,
                        "column": 13
                      },
                      "end": {
                        "line": 189,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 6439,
                      "end": 6459,
                      "loc": {
                        "start": {
                          "line": 189,
                          "column": 13
                        },
                        "end": {
                          "line": 189,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 6439,
                        "end": 6455,
                        "loc": {
                          "start": {
                            "line": 189,
                            "column": 13
                          },
                          "end": {
                            "line": 189,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6439,
                          "end": 6448,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 13
                            },
                            "end": {
                              "line": 189,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6449,
                          "end": 6455,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 23
                            },
                            "end": {
                              "line": 189,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 6458,
                        "end": 6459,
                        "loc": {
                          "start": {
                            "line": 189,
                            "column": 32
                          },
                          "end": {
                            "line": 189,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 6462,
                      "end": 6483,
                      "loc": {
                        "start": {
                          "line": 189,
                          "column": 36
                        },
                        "end": {
                          "line": 189,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 6462,
                        "end": 6472,
                        "loc": {
                          "start": {
                            "line": 189,
                            "column": 36
                          },
                          "end": {
                            "line": 189,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6462,
                          "end": 6467,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 36
                            },
                            "end": {
                              "line": 189,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6468,
                          "end": 6472,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 42
                            },
                            "end": {
                              "line": 189,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 6473,
                          "end": 6482,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 47
                            },
                            "end": {
                              "line": 189,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 6486,
                      "end": 6492,
                      "loc": {
                        "start": {
                          "line": 189,
                          "column": 60
                        },
                        "end": {
                          "line": 189,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 6499,
                "end": 6599,
                "loc": {
                  "start": {
                    "line": 190,
                    "column": 4
                  },
                  "end": {
                    "line": 192,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 6503,
                  "end": 6524,
                  "loc": {
                    "start": {
                      "line": 190,
                      "column": 8
                    },
                    "end": {
                      "line": 190,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 6503,
                    "end": 6516,
                    "loc": {
                      "start": {
                        "line": 190,
                        "column": 8
                      },
                      "end": {
                        "line": 190,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 6503,
                      "end": 6508,
                      "loc": {
                        "start": {
                          "line": 190,
                          "column": 8
                        },
                        "end": {
                          "line": 190,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6509,
                      "end": 6516,
                      "loc": {
                        "start": {
                          "line": 190,
                          "column": 14
                        },
                        "end": {
                          "line": 190,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 6517,
                      "end": 6523,
                      "loc": {
                        "start": {
                          "line": 190,
                          "column": 22
                        },
                        "end": {
                          "line": 190,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6526,
                  "end": 6599,
                  "loc": {
                    "start": {
                      "line": 190,
                      "column": 31
                    },
                    "end": {
                      "line": 192,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 6537,
                      "end": 6592,
                      "loc": {
                        "start": {
                          "line": 191,
                          "column": 8
                        },
                        "end": {
                          "line": 191,
                          "column": 63
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6544,
                        "end": 6591,
                        "loc": {
                          "start": {
                            "line": 191,
                            "column": 15
                          },
                          "end": {
                            "line": 191,
                            "column": 62
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6544,
                          "end": 6555,
                          "loc": {
                            "start": {
                              "line": 191,
                              "column": 15
                            },
                            "end": {
                              "line": 191,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6544,
                            "end": 6551,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 15
                              },
                              "end": {
                                "line": 191,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6552,
                            "end": 6555,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 23
                              },
                              "end": {
                                "line": 191,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6556,
                            "end": 6590,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 27
                              },
                              "end": {
                                "line": 191,
                                "column": 61
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6556,
                              "end": 6566,
                              "loc": {
                                "start": {
                                  "line": 191,
                                  "column": 27
                                },
                                "end": {
                                  "line": 191,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6556,
                                "end": 6562,
                                "loc": {
                                  "start": {
                                    "line": 191,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 191,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6563,
                                "end": 6566,
                                "loc": {
                                  "start": {
                                    "line": 191,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 191,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 6567,
                                "end": 6589,
                                "loc": {
                                  "start": {
                                    "line": 191,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 191,
                                    "column": 60
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 6567,
                                    "end": 6571,
                                    "loc": {
                                      "start": {
                                        "line": 191,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 191,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 6575,
                                  "end": 6589,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 60
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6575,
                                    "end": 6583,
                                    "loc": {
                                      "start": {
                                        "line": 191,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 191,
                                        "column": 54
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6575,
                                      "end": 6579,
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6580,
                                      "end": 6583,
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 54
                                        }
                                      },
                                      "name": "add"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 6584,
                                      "end": 6588,
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 59
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 6607,
                "end": 7033,
                "loc": {
                  "start": {
                    "line": 194,
                    "column": 4
                  },
                  "end": {
                    "line": 202,
                    "column": 5
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 6611,
                  "end": 6662,
                  "loc": {
                    "start": {
                      "line": 194,
                      "column": 8
                    },
                    "end": {
                      "line": 194,
                      "column": 59
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 6611,
                    "end": 6626,
                    "loc": {
                      "start": {
                        "line": 194,
                        "column": 8
                      },
                      "end": {
                        "line": 194,
                        "column": 23
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 6611,
                      "end": 6617,
                      "loc": {
                        "start": {
                          "line": 194,
                          "column": 8
                        },
                        "end": {
                          "line": 194,
                          "column": 14
                        }
                      },
                      "name": "object"
                    },
                    "operator": "!==",
                    "right": {
                      "type": "ThisExpression",
                      "start": 6622,
                      "end": 6626,
                      "loc": {
                        "start": {
                          "line": 194,
                          "column": 19
                        },
                        "end": {
                          "line": 194,
                          "column": 23
                        }
                      }
                    }
                  },
                  "operator": "&&",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 6630,
                    "end": 6662,
                    "loc": {
                      "start": {
                        "line": 194,
                        "column": 27
                      },
                      "end": {
                        "line": 194,
                        "column": 59
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 6630,
                      "end": 6636,
                      "loc": {
                        "start": {
                          "line": 194,
                          "column": 27
                        },
                        "end": {
                          "line": 194,
                          "column": 33
                        }
                      },
                      "name": "object"
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "MemberExpression",
                      "start": 6648,
                      "end": 6662,
                      "loc": {
                        "start": {
                          "line": 194,
                          "column": 45
                        },
                        "end": {
                          "line": 194,
                          "column": 59
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 6648,
                        "end": 6653,
                        "loc": {
                          "start": {
                            "line": 194,
                            "column": 45
                          },
                          "end": {
                            "line": 194,
                            "column": 50
                          }
                        },
                        "name": "THREE"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6654,
                        "end": 6662,
                        "loc": {
                          "start": {
                            "line": 194,
                            "column": 51
                          },
                          "end": {
                            "line": 194,
                            "column": 59
                          }
                        },
                        "name": "Object3D"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6664,
                  "end": 7033,
                  "loc": {
                    "start": {
                      "line": 194,
                      "column": 61
                    },
                    "end": {
                      "line": 202,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 6675,
                      "end": 6738,
                      "loc": {
                        "start": {
                          "line": 195,
                          "column": 8
                        },
                        "end": {
                          "line": 196,
                          "column": 41
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 6679,
                        "end": 6694,
                        "loc": {
                          "start": {
                            "line": 195,
                            "column": 12
                          },
                          "end": {
                            "line": 195,
                            "column": 27
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 6680,
                          "end": 6694,
                          "loc": {
                            "start": {
                              "line": 195,
                              "column": 13
                            },
                            "end": {
                              "line": 195,
                              "column": 27
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "MemberExpression",
                            "start": 6681,
                            "end": 6694,
                            "loc": {
                              "start": {
                                "line": 195,
                                "column": 14
                              },
                              "end": {
                                "line": 195,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 6681,
                              "end": 6687,
                              "loc": {
                                "start": {
                                  "line": 195,
                                  "column": 14
                                },
                                "end": {
                                  "line": 195,
                                  "column": 20
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6688,
                              "end": 6694,
                              "loc": {
                                "start": {
                                  "line": 195,
                                  "column": 21
                                },
                                "end": {
                                  "line": 195,
                                  "column": 27
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 6709,
                        "end": 6738,
                        "loc": {
                          "start": {
                            "line": 196,
                            "column": 12
                          },
                          "end": {
                            "line": 196,
                            "column": 41
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 6709,
                          "end": 6737,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 12
                            },
                            "end": {
                              "line": 196,
                              "column": 40
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6709,
                            "end": 6729,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 12
                              },
                              "end": {
                                "line": 196,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6709,
                              "end": 6722,
                              "loc": {
                                "start": {
                                  "line": 196,
                                  "column": 12
                                },
                                "end": {
                                  "line": 196,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6709,
                                "end": 6715,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 18
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6716,
                                "end": 6722,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 25
                                  }
                                },
                                "name": "parent"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6723,
                              "end": 6729,
                              "loc": {
                                "start": {
                                  "line": 196,
                                  "column": 26
                                },
                                "end": {
                                  "line": 196,
                                  "column": 32
                                }
                              },
                              "name": "remove"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 6730,
                              "end": 6736,
                              "loc": {
                                "start": {
                                  "line": 196,
                                  "column": 33
                                },
                                "end": {
                                  "line": 196,
                                  "column": 39
                                }
                              },
                              "name": "object"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6748,
                      "end": 6769,
                      "loc": {
                        "start": {
                          "line": 197,
                          "column": 8
                        },
                        "end": {
                          "line": 197,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 6748,
                        "end": 6768,
                        "loc": {
                          "start": {
                            "line": 197,
                            "column": 8
                          },
                          "end": {
                            "line": 197,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 6748,
                          "end": 6761,
                          "loc": {
                            "start": {
                              "line": 197,
                              "column": 8
                            },
                            "end": {
                              "line": 197,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6748,
                            "end": 6754,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 8
                              },
                              "end": {
                                "line": 197,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6755,
                            "end": 6761,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 15
                              },
                              "end": {
                                "line": 197,
                                "column": 21
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ThisExpression",
                          "start": 6764,
                          "end": 6768,
                          "loc": {
                            "start": {
                              "line": 197,
                              "column": 24
                            },
                            "end": {
                              "line": 197,
                              "column": 28
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6779,
                      "end": 6830,
                      "loc": {
                        "start": {
                          "line": 198,
                          "column": 8
                        },
                        "end": {
                          "line": 198,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6779,
                        "end": 6829,
                        "loc": {
                          "start": {
                            "line": 198,
                            "column": 8
                          },
                          "end": {
                            "line": 198,
                            "column": 58
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6779,
                          "end": 6797,
                          "loc": {
                            "start": {
                              "line": 198,
                              "column": 8
                            },
                            "end": {
                              "line": 198,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 6779,
                            "end": 6792,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 8
                              },
                              "end": {
                                "line": 198,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6779,
                              "end": 6783,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 8
                                },
                                "end": {
                                  "line": 198,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6784,
                              "end": 6792,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 13
                                },
                                "end": {
                                  "line": 198,
                                  "column": 21
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6793,
                            "end": 6797,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 22
                              },
                              "end": {
                                "line": 198,
                                "column": 26
                              }
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6798,
                            "end": 6828,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 27
                              },
                              "end": {
                                "line": 198,
                                "column": 57
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 6798,
                              "end": 6814,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 27
                                },
                                "end": {
                                  "line": 198,
                                  "column": 43
                                }
                              },
                              "name": "updateReferences"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 6815,
                                "end": 6819,
                                "loc": {
                                  "start": {
                                    "line": 198,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 198,
                                    "column": 48
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 6821,
                                "end": 6827,
                                "loc": {
                                  "start": {
                                    "line": 198,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 198,
                                    "column": 56
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6840,
                      "end": 6906,
                      "loc": {
                        "start": {
                          "line": 199,
                          "column": 8
                        },
                        "end": {
                          "line": 199,
                          "column": 74
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6840,
                        "end": 6905,
                        "loc": {
                          "start": {
                            "line": 199,
                            "column": 8
                          },
                          "end": {
                            "line": 199,
                            "column": 73
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6840,
                          "end": 6849,
                          "loc": {
                            "start": {
                              "line": 199,
                              "column": 8
                            },
                            "end": {
                              "line": 199,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6840,
                            "end": 6844,
                            "loc": {
                              "start": {
                                "line": 199,
                                "column": 8
                              },
                              "end": {
                                "line": 199,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6845,
                            "end": 6849,
                            "loc": {
                              "start": {
                                "line": 199,
                                "column": 13
                              },
                              "end": {
                                "line": 199,
                                "column": 17
                              }
                            },
                            "name": "emit"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 6850,
                            "end": 6885,
                            "loc": {
                              "start": {
                                "line": 199,
                                "column": 18
                              },
                              "end": {
                                "line": 199,
                                "column": 53
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6850,
                              "end": 6874,
                              "loc": {
                                "start": {
                                  "line": 199,
                                  "column": 18
                                },
                                "end": {
                                  "line": 199,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6850,
                                "end": 6864,
                                "loc": {
                                  "start": {
                                    "line": 199,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 199,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6850,
                                  "end": 6857,
                                  "loc": {
                                    "start": {
                                      "line": 199,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 199,
                                      "column": 25
                                    }
                                  },
                                  "name": "Object3"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6858,
                                  "end": 6864,
                                  "loc": {
                                    "start": {
                                      "line": 199,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 199,
                                      "column": 32
                                    }
                                  },
                                  "name": "Events"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6865,
                                "end": 6874,
                                "loc": {
                                  "start": {
                                    "line": 199,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 199,
                                    "column": 42
                                  }
                                },
                                "name": "Lifecycle"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6875,
                              "end": 6885,
                              "loc": {
                                "start": {
                                  "line": 199,
                                  "column": 43
                                },
                                "end": {
                                  "line": 199,
                                  "column": 53
                                }
                              },
                              "name": "ChildAdded"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 6887,
                            "end": 6904,
                            "loc": {
                              "start": {
                                "line": 199,
                                "column": 55
                              },
                              "end": {
                                "line": 199,
                                "column": 72
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 6889,
                                "end": 6902,
                                "loc": {
                                  "start": {
                                    "line": 199,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 199,
                                    "column": 70
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 6889,
                                  "end": 6894,
                                  "loc": {
                                    "start": {
                                      "line": 199,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 199,
                                      "column": 62
                                    }
                                  },
                                  "name": "child"
                                },
                                "value": {
                                  "type": "Identifier",
                                  "start": 6896,
                                  "end": 6902,
                                  "loc": {
                                    "start": {
                                      "line": 199,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 199,
                                      "column": 70
                                    }
                                  },
                                  "name": "object"
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6916,
                      "end": 6978,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 8
                        },
                        "end": {
                          "line": 200,
                          "column": 70
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6916,
                        "end": 6977,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 8
                          },
                          "end": {
                            "line": 200,
                            "column": 69
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6916,
                          "end": 6927,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 8
                            },
                            "end": {
                              "line": 200,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6916,
                            "end": 6922,
                            "loc": {
                              "start": {
                                "line": 200,
                                "column": 8
                              },
                              "end": {
                                "line": 200,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6923,
                            "end": 6927,
                            "loc": {
                              "start": {
                                "line": 200,
                                "column": 15
                              },
                              "end": {
                                "line": 200,
                                "column": 19
                              }
                            },
                            "name": "emit"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 6928,
                            "end": 6958,
                            "loc": {
                              "start": {
                                "line": 200,
                                "column": 20
                              },
                              "end": {
                                "line": 200,
                                "column": 50
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6928,
                              "end": 6952,
                              "loc": {
                                "start": {
                                  "line": 200,
                                  "column": 20
                                },
                                "end": {
                                  "line": 200,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6928,
                                "end": 6942,
                                "loc": {
                                  "start": {
                                    "line": 200,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 200,
                                    "column": 34
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6928,
                                  "end": 6935,
                                  "loc": {
                                    "start": {
                                      "line": 200,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 200,
                                      "column": 27
                                    }
                                  },
                                  "name": "Object3"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6936,
                                  "end": 6942,
                                  "loc": {
                                    "start": {
                                      "line": 200,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 200,
                                      "column": 34
                                    }
                                  },
                                  "name": "Events"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6943,
                                "end": 6952,
                                "loc": {
                                  "start": {
                                    "line": 200,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 200,
                                    "column": 44
                                  }
                                },
                                "name": "Lifecycle"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6953,
                              "end": 6958,
                              "loc": {
                                "start": {
                                  "line": 200,
                                  "column": 45
                                },
                                "end": {
                                  "line": 200,
                                  "column": 50
                                }
                              },
                              "name": "Added"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 6960,
                            "end": 6976,
                            "loc": {
                              "start": {
                                "line": 200,
                                "column": 52
                              },
                              "end": {
                                "line": 200,
                                "column": 68
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 6962,
                                "end": 6974,
                                "loc": {
                                  "start": {
                                    "line": 200,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 200,
                                    "column": 66
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 6962,
                                  "end": 6968,
                                  "loc": {
                                    "start": {
                                      "line": 200,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 200,
                                      "column": 60
                                    }
                                  },
                                  "name": "parent"
                                },
                                "value": {
                                  "type": "ThisExpression",
                                  "start": 6970,
                                  "end": 6974,
                                  "loc": {
                                    "start": {
                                      "line": 200,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 200,
                                      "column": 66
                                    }
                                  }
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6988,
                      "end": 7026,
                      "loc": {
                        "start": {
                          "line": 201,
                          "column": 8
                        },
                        "end": {
                          "line": 201,
                          "column": 46
                        }
                      },
                      "expression": {
                        "type": "LogicalExpression",
                        "start": 6988,
                        "end": 7025,
                        "loc": {
                          "start": {
                            "line": 201,
                            "column": 8
                          },
                          "end": {
                            "line": 201,
                            "column": 45
                          }
                        },
                        "left": {
                          "type": "UnaryExpression",
                          "start": 6988,
                          "end": 6999,
                          "loc": {
                            "start": {
                              "line": 201,
                              "column": 8
                            },
                            "end": {
                              "line": 201,
                              "column": 19
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 6989,
                            "end": 6999,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 9
                              },
                              "end": {
                                "line": 201,
                                "column": 19
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 6990,
                              "end": 6999,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 10
                                },
                                "end": {
                                  "line": 201,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6990,
                                "end": 6994,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 14
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6995,
                                "end": 6999,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 19
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            }
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "CallExpression",
                          "start": 7003,
                          "end": 7025,
                          "loc": {
                            "start": {
                              "line": 201,
                              "column": 23
                            },
                            "end": {
                              "line": 201,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7003,
                            "end": 7023,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 23
                              },
                              "end": {
                                "line": 201,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 7003,
                              "end": 7012,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 23
                                },
                                "end": {
                                  "line": 201,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7003,
                                "end": 7007,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7008,
                                "end": 7012,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 32
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7013,
                              "end": 7023,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 33
                                },
                                "end": {
                                  "line": 201,
                                  "column": 43
                                }
                              },
                              "name": "invalidate"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 7040,
      "end": 7784,
      "loc": {
        "start": {
          "line": 205,
          "column": 0
        },
        "end": {
          "line": 222,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 7040,
        "end": 7784,
        "loc": {
          "start": {
            "line": 205,
            "column": 0
          },
          "end": {
            "line": 222,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 7040,
          "end": 7076,
          "loc": {
            "start": {
              "line": 205,
              "column": 0
            },
            "end": {
              "line": 205,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 7040,
            "end": 7064,
            "loc": {
              "start": {
                "line": 205,
                "column": 0
              },
              "end": {
                "line": 205,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 7040,
              "end": 7054,
              "loc": {
                "start": {
                  "line": 205,
                  "column": 0
                },
                "end": {
                  "line": 205,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 7040,
                "end": 7045,
                "loc": {
                  "start": {
                    "line": 205,
                    "column": 0
                  },
                  "end": {
                    "line": 205,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 7046,
                "end": 7054,
                "loc": {
                  "start": {
                    "line": 205,
                    "column": 6
                  },
                  "end": {
                    "line": 205,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 7055,
              "end": 7064,
              "loc": {
                "start": {
                  "line": 205,
                  "column": 15
                },
                "end": {
                  "line": 205,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 7065,
            "end": 7076,
            "loc": {
              "start": {
                "line": 205,
                "column": 25
              },
              "end": {
                "line": 205,
                "column": 36
              }
            },
            "name": "removeAsync"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 7079,
          "end": 7784,
          "loc": {
            "start": {
              "line": 205,
              "column": 39
            },
            "end": {
              "line": 222,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 7065,
            "end": 7076,
            "loc": {
              "start": {
                "line": 205,
                "column": 25
              },
              "end": {
                "line": 205,
                "column": 36
              }
            },
            "name": "removeAsync"
          },
          "generator": false,
          "expression": false,
          "async": true,
          "params": [
            {
              "type": "Identifier",
              "start": 7094,
              "end": 7100,
              "loc": {
                "start": {
                  "line": 205,
                  "column": 54
                },
                "end": {
                  "line": 205,
                  "column": 60
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 7102,
            "end": 7784,
            "loc": {
              "start": {
                "line": 205,
                "column": 62
              },
              "end": {
                "line": 222,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 7109,
                "end": 7172,
                "loc": {
                  "start": {
                    "line": 206,
                    "column": 4
                  },
                  "end": {
                    "line": 206,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 7109,
                  "end": 7171,
                  "loc": {
                    "start": {
                      "line": 206,
                      "column": 4
                    },
                    "end": {
                      "line": 206,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 7109,
                    "end": 7115,
                    "loc": {
                      "start": {
                        "line": 206,
                        "column": 4
                      },
                      "end": {
                        "line": 206,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 7118,
                    "end": 7171,
                    "loc": {
                      "start": {
                        "line": 206,
                        "column": 13
                      },
                      "end": {
                        "line": 206,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 7118,
                      "end": 7138,
                      "loc": {
                        "start": {
                          "line": 206,
                          "column": 13
                        },
                        "end": {
                          "line": 206,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 7118,
                        "end": 7134,
                        "loc": {
                          "start": {
                            "line": 206,
                            "column": 13
                          },
                          "end": {
                            "line": 206,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 7118,
                          "end": 7127,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 13
                            },
                            "end": {
                              "line": 206,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7128,
                          "end": 7134,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 23
                            },
                            "end": {
                              "line": 206,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 7137,
                        "end": 7138,
                        "loc": {
                          "start": {
                            "line": 206,
                            "column": 32
                          },
                          "end": {
                            "line": 206,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 7141,
                      "end": 7162,
                      "loc": {
                        "start": {
                          "line": 206,
                          "column": 36
                        },
                        "end": {
                          "line": 206,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 7141,
                        "end": 7151,
                        "loc": {
                          "start": {
                            "line": 206,
                            "column": 36
                          },
                          "end": {
                            "line": 206,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 7141,
                          "end": 7146,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 36
                            },
                            "end": {
                              "line": 206,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7147,
                          "end": 7151,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 42
                            },
                            "end": {
                              "line": 206,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 7152,
                          "end": 7161,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 47
                            },
                            "end": {
                              "line": 206,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 7165,
                      "end": 7171,
                      "loc": {
                        "start": {
                          "line": 206,
                          "column": 60
                        },
                        "end": {
                          "line": 206,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 7178,
                "end": 7286,
                "loc": {
                  "start": {
                    "line": 207,
                    "column": 4
                  },
                  "end": {
                    "line": 209,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 7182,
                  "end": 7203,
                  "loc": {
                    "start": {
                      "line": 207,
                      "column": 8
                    },
                    "end": {
                      "line": 207,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 7182,
                    "end": 7195,
                    "loc": {
                      "start": {
                        "line": 207,
                        "column": 8
                      },
                      "end": {
                        "line": 207,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 7182,
                      "end": 7187,
                      "loc": {
                        "start": {
                          "line": 207,
                          "column": 8
                        },
                        "end": {
                          "line": 207,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 7188,
                      "end": 7195,
                      "loc": {
                        "start": {
                          "line": 207,
                          "column": 14
                        },
                        "end": {
                          "line": 207,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 7196,
                      "end": 7202,
                      "loc": {
                        "start": {
                          "line": 207,
                          "column": 22
                        },
                        "end": {
                          "line": 207,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 7205,
                  "end": 7286,
                  "loc": {
                    "start": {
                      "line": 207,
                      "column": 31
                    },
                    "end": {
                      "line": 209,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 7216,
                      "end": 7279,
                      "loc": {
                        "start": {
                          "line": 208,
                          "column": 8
                        },
                        "end": {
                          "line": 208,
                          "column": 71
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 7223,
                        "end": 7278,
                        "loc": {
                          "start": {
                            "line": 208,
                            "column": 15
                          },
                          "end": {
                            "line": 208,
                            "column": 70
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7223,
                          "end": 7234,
                          "loc": {
                            "start": {
                              "line": 208,
                              "column": 15
                            },
                            "end": {
                              "line": 208,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7223,
                            "end": 7230,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 15
                              },
                              "end": {
                                "line": 208,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7231,
                            "end": 7234,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 23
                              },
                              "end": {
                                "line": 208,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 7235,
                            "end": 7277,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 27
                              },
                              "end": {
                                "line": 208,
                                "column": 69
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7235,
                              "end": 7245,
                              "loc": {
                                "start": {
                                  "line": 208,
                                  "column": 27
                                },
                                "end": {
                                  "line": 208,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7235,
                                "end": 7241,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7242,
                                "end": 7245,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 7246,
                                "end": 7276,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 68
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 7246,
                                    "end": 7250,
                                    "loc": {
                                      "start": {
                                        "line": 208,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 208,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 7254,
                                  "end": 7276,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 68
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 7254,
                                    "end": 7270,
                                    "loc": {
                                      "start": {
                                        "line": 208,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 208,
                                        "column": 62
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7254,
                                      "end": 7258,
                                      "loc": {
                                        "start": {
                                          "line": 208,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 208,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7259,
                                      "end": 7270,
                                      "loc": {
                                        "start": {
                                          "line": 208,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 208,
                                          "column": 62
                                        }
                                      },
                                      "name": "removeAsync"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 7271,
                                      "end": 7275,
                                      "loc": {
                                        "start": {
                                          "line": 208,
                                          "column": 63
                                        },
                                        "end": {
                                          "line": 208,
                                          "column": 67
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 7294,
                "end": 7781,
                "loc": {
                  "start": {
                    "line": 211,
                    "column": 4
                  },
                  "end": {
                    "line": 221,
                    "column": 5
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 7298,
                  "end": 7330,
                  "loc": {
                    "start": {
                      "line": 211,
                      "column": 8
                    },
                    "end": {
                      "line": 211,
                      "column": 40
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 7298,
                    "end": 7304,
                    "loc": {
                      "start": {
                        "line": 211,
                        "column": 8
                      },
                      "end": {
                        "line": 211,
                        "column": 14
                      }
                    },
                    "name": "object"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "MemberExpression",
                    "start": 7316,
                    "end": 7330,
                    "loc": {
                      "start": {
                        "line": 211,
                        "column": 26
                      },
                      "end": {
                        "line": 211,
                        "column": 40
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 7316,
                      "end": 7321,
                      "loc": {
                        "start": {
                          "line": 211,
                          "column": 26
                        },
                        "end": {
                          "line": 211,
                          "column": 31
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 7322,
                      "end": 7330,
                      "loc": {
                        "start": {
                          "line": 211,
                          "column": 32
                        },
                        "end": {
                          "line": 211,
                          "column": 40
                        }
                      },
                      "name": "Object3D"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 7332,
                  "end": 7781,
                  "loc": {
                    "start": {
                      "line": 211,
                      "column": 42
                    },
                    "end": {
                      "line": 221,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 7343,
                      "end": 7385,
                      "loc": {
                        "start": {
                          "line": 212,
                          "column": 8
                        },
                        "end": {
                          "line": 212,
                          "column": 50
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7347,
                          "end": 7384,
                          "loc": {
                            "start": {
                              "line": 212,
                              "column": 12
                            },
                            "end": {
                              "line": 212,
                              "column": 49
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7347,
                            "end": 7352,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 12
                              },
                              "end": {
                                "line": 212,
                                "column": 17
                              }
                            },
                            "name": "index"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7355,
                            "end": 7384,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 20
                              },
                              "end": {
                                "line": 212,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7355,
                              "end": 7376,
                              "loc": {
                                "start": {
                                  "line": 212,
                                  "column": 20
                                },
                                "end": {
                                  "line": 212,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 7355,
                                "end": 7368,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7355,
                                  "end": 7359,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 24
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7360,
                                  "end": 7368,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 33
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7369,
                                "end": 7376,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 41
                                  }
                                },
                                "name": "indexOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7377,
                                "end": 7383,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 48
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 7395,
                      "end": 7774,
                      "loc": {
                        "start": {
                          "line": 213,
                          "column": 8
                        },
                        "end": {
                          "line": 220,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7399,
                        "end": 7411,
                        "loc": {
                          "start": {
                            "line": 213,
                            "column": 12
                          },
                          "end": {
                            "line": 213,
                            "column": 24
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 7399,
                          "end": 7404,
                          "loc": {
                            "start": {
                              "line": 213,
                              "column": 12
                            },
                            "end": {
                              "line": 213,
                              "column": 17
                            }
                          },
                          "name": "index"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "UnaryExpression",
                          "start": 7409,
                          "end": 7411,
                          "loc": {
                            "start": {
                              "line": 213,
                              "column": 22
                            },
                            "end": {
                              "line": 213,
                              "column": 24
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 7410,
                            "end": 7411,
                            "loc": {
                              "start": {
                                "line": 213,
                                "column": 23
                              },
                              "end": {
                                "line": 213,
                                "column": 24
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 7413,
                        "end": 7774,
                        "loc": {
                          "start": {
                            "line": 213,
                            "column": 26
                          },
                          "end": {
                            "line": 220,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 7428,
                            "end": 7502,
                            "loc": {
                              "start": {
                                "line": 214,
                                "column": 12
                              },
                              "end": {
                                "line": 214,
                                "column": 86
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 7428,
                              "end": 7501,
                              "loc": {
                                "start": {
                                  "line": 214,
                                  "column": 12
                                },
                                "end": {
                                  "line": 214,
                                  "column": 85
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 7434,
                                "end": 7501,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 85
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7434,
                                  "end": 7443,
                                  "loc": {
                                    "start": {
                                      "line": 214,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 214,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7434,
                                    "end": 7438,
                                    "loc": {
                                      "start": {
                                        "line": 214,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 214,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7439,
                                    "end": 7443,
                                    "loc": {
                                      "start": {
                                        "line": 214,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 214,
                                        "column": 27
                                      }
                                    },
                                    "name": "emit"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 7444,
                                    "end": 7481,
                                    "loc": {
                                      "start": {
                                        "line": 214,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 214,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7444,
                                      "end": 7468,
                                      "loc": {
                                        "start": {
                                          "line": 214,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 214,
                                          "column": 52
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 7444,
                                        "end": 7458,
                                        "loc": {
                                          "start": {
                                            "line": 214,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 214,
                                            "column": 42
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7444,
                                          "end": 7451,
                                          "loc": {
                                            "start": {
                                              "line": 214,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 214,
                                              "column": 35
                                            }
                                          },
                                          "name": "Object3"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7452,
                                          "end": 7458,
                                          "loc": {
                                            "start": {
                                              "line": 214,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 214,
                                              "column": 42
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7459,
                                        "end": 7468,
                                        "loc": {
                                          "start": {
                                            "line": 214,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 214,
                                            "column": 52
                                          }
                                        },
                                        "name": "Lifecycle"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7469,
                                      "end": 7481,
                                      "loc": {
                                        "start": {
                                          "line": 214,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 214,
                                          "column": 65
                                        }
                                      },
                                      "name": "ChildRemoved"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "ObjectExpression",
                                    "start": 7483,
                                    "end": 7500,
                                    "loc": {
                                      "start": {
                                        "line": 214,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 214,
                                        "column": 84
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "Property",
                                        "start": 7485,
                                        "end": 7498,
                                        "loc": {
                                          "start": {
                                            "line": 214,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 214,
                                            "column": 82
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 7485,
                                          "end": 7490,
                                          "loc": {
                                            "start": {
                                              "line": 214,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 214,
                                              "column": 74
                                            }
                                          },
                                          "name": "child"
                                        },
                                        "value": {
                                          "type": "Identifier",
                                          "start": 7492,
                                          "end": 7498,
                                          "loc": {
                                            "start": {
                                              "line": 214,
                                              "column": 76
                                            },
                                            "end": {
                                              "line": 214,
                                              "column": 82
                                            }
                                          },
                                          "name": "object"
                                        },
                                        "kind": "init"
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7516,
                            "end": 7586,
                            "loc": {
                              "start": {
                                "line": 215,
                                "column": 12
                              },
                              "end": {
                                "line": 215,
                                "column": 82
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 7516,
                              "end": 7585,
                              "loc": {
                                "start": {
                                  "line": 215,
                                  "column": 12
                                },
                                "end": {
                                  "line": 215,
                                  "column": 81
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 7522,
                                "end": 7585,
                                "loc": {
                                  "start": {
                                    "line": 215,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 215,
                                    "column": 81
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7522,
                                  "end": 7533,
                                  "loc": {
                                    "start": {
                                      "line": 215,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 215,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 7522,
                                    "end": 7528,
                                    "loc": {
                                      "start": {
                                        "line": 215,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 215,
                                        "column": 24
                                      }
                                    },
                                    "name": "object"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7529,
                                    "end": 7533,
                                    "loc": {
                                      "start": {
                                        "line": 215,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 215,
                                        "column": 29
                                      }
                                    },
                                    "name": "emit"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 7534,
                                    "end": 7566,
                                    "loc": {
                                      "start": {
                                        "line": 215,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 215,
                                        "column": 62
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7534,
                                      "end": 7558,
                                      "loc": {
                                        "start": {
                                          "line": 215,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 215,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 7534,
                                        "end": 7548,
                                        "loc": {
                                          "start": {
                                            "line": 215,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 215,
                                            "column": 44
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7534,
                                          "end": 7541,
                                          "loc": {
                                            "start": {
                                              "line": 215,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 215,
                                              "column": 37
                                            }
                                          },
                                          "name": "Object3"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7542,
                                          "end": 7548,
                                          "loc": {
                                            "start": {
                                              "line": 215,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 215,
                                              "column": 44
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7549,
                                        "end": 7558,
                                        "loc": {
                                          "start": {
                                            "line": 215,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 215,
                                            "column": 54
                                          }
                                        },
                                        "name": "Lifecycle"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7559,
                                      "end": 7566,
                                      "loc": {
                                        "start": {
                                          "line": 215,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 215,
                                          "column": 62
                                        }
                                      },
                                      "name": "Removed"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "ObjectExpression",
                                    "start": 7568,
                                    "end": 7584,
                                    "loc": {
                                      "start": {
                                        "line": 215,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 215,
                                        "column": 80
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "Property",
                                        "start": 7570,
                                        "end": 7582,
                                        "loc": {
                                          "start": {
                                            "line": 215,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 215,
                                            "column": 78
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 7570,
                                          "end": 7576,
                                          "loc": {
                                            "start": {
                                              "line": 215,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 215,
                                              "column": 72
                                            }
                                          },
                                          "name": "parent"
                                        },
                                        "value": {
                                          "type": "ThisExpression",
                                          "start": 7578,
                                          "end": 7582,
                                          "loc": {
                                            "start": {
                                              "line": 215,
                                              "column": 74
                                            },
                                            "end": {
                                              "line": 215,
                                              "column": 78
                                            }
                                          }
                                        },
                                        "kind": "init"
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7600,
                            "end": 7631,
                            "loc": {
                              "start": {
                                "line": 216,
                                "column": 12
                              },
                              "end": {
                                "line": 216,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7600,
                              "end": 7630,
                              "loc": {
                                "start": {
                                  "line": 216,
                                  "column": 12
                                },
                                "end": {
                                  "line": 216,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7600,
                                "end": 7620,
                                "loc": {
                                  "start": {
                                    "line": 216,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 216,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 7600,
                                  "end": 7613,
                                  "loc": {
                                    "start": {
                                      "line": 216,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 216,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7600,
                                    "end": 7604,
                                    "loc": {
                                      "start": {
                                        "line": 216,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 216,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7605,
                                    "end": 7613,
                                    "loc": {
                                      "start": {
                                        "line": 216,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 216,
                                        "column": 25
                                      }
                                    },
                                    "name": "children"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7614,
                                  "end": 7620,
                                  "loc": {
                                    "start": {
                                      "line": 216,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 216,
                                      "column": 32
                                    }
                                  },
                                  "name": "splice"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 7621,
                                  "end": 7626,
                                  "loc": {
                                    "start": {
                                      "line": 216,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 216,
                                      "column": 38
                                    }
                                  },
                                  "name": "index"
                                },
                                {
                                  "type": "Literal",
                                  "start": 7628,
                                  "end": 7629,
                                  "loc": {
                                    "start": {
                                      "line": 216,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 216,
                                      "column": 41
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7645,
                            "end": 7666,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 12
                              },
                              "end": {
                                "line": 217,
                                "column": 33
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 7645,
                              "end": 7665,
                              "loc": {
                                "start": {
                                  "line": 217,
                                  "column": 12
                                },
                                "end": {
                                  "line": 217,
                                  "column": 32
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 7645,
                                "end": 7658,
                                "loc": {
                                  "start": {
                                    "line": 217,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 217,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7645,
                                  "end": 7651,
                                  "loc": {
                                    "start": {
                                      "line": 217,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 217,
                                      "column": 18
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7652,
                                  "end": 7658,
                                  "loc": {
                                    "start": {
                                      "line": 217,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 217,
                                      "column": 25
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 7661,
                                "end": 7665,
                                "loc": {
                                  "start": {
                                    "line": 217,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 217,
                                    "column": 32
                                  }
                                },
                                "value": null,
                                "rawValue": null,
                                "raw": "null"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7680,
                            "end": 7711,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 12
                              },
                              "end": {
                                "line": 218,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7680,
                              "end": 7710,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 12
                                },
                                "end": {
                                  "line": 218,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 7680,
                                "end": 7696,
                                "loc": {
                                  "start": {
                                    "line": 218,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 218,
                                    "column": 28
                                  }
                                },
                                "name": "updateReferences"
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 7697,
                                  "end": 7701,
                                  "loc": {
                                    "start": {
                                      "line": 218,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 218,
                                      "column": 33
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 7703,
                                  "end": 7709,
                                  "loc": {
                                    "start": {
                                      "line": 218,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 218,
                                      "column": 41
                                    }
                                  },
                                  "name": "object"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7725,
                            "end": 7763,
                            "loc": {
                              "start": {
                                "line": 219,
                                "column": 12
                              },
                              "end": {
                                "line": 219,
                                "column": 50
                              }
                            },
                            "expression": {
                              "type": "LogicalExpression",
                              "start": 7725,
                              "end": 7762,
                              "loc": {
                                "start": {
                                  "line": 219,
                                  "column": 12
                                },
                                "end": {
                                  "line": 219,
                                  "column": 49
                                }
                              },
                              "left": {
                                "type": "UnaryExpression",
                                "start": 7725,
                                "end": 7736,
                                "loc": {
                                  "start": {
                                    "line": 219,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 219,
                                    "column": 23
                                  }
                                },
                                "operator": "!",
                                "prefix": true,
                                "argument": {
                                  "type": "UnaryExpression",
                                  "start": 7726,
                                  "end": 7736,
                                  "loc": {
                                    "start": {
                                      "line": 219,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 219,
                                      "column": 23
                                    }
                                  },
                                  "operator": "!",
                                  "prefix": true,
                                  "argument": {
                                    "type": "MemberExpression",
                                    "start": 7727,
                                    "end": 7736,
                                    "loc": {
                                      "start": {
                                        "line": 219,
                                        "column": 14
                                      },
                                      "end": {
                                        "line": 219,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7727,
                                      "end": 7731,
                                      "loc": {
                                        "start": {
                                          "line": 219,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 219,
                                          "column": 18
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7732,
                                      "end": 7736,
                                      "loc": {
                                        "start": {
                                          "line": 219,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 219,
                                          "column": 23
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  }
                                }
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 7740,
                                "end": 7762,
                                "loc": {
                                  "start": {
                                    "line": 219,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 219,
                                    "column": 49
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7740,
                                  "end": 7760,
                                  "loc": {
                                    "start": {
                                      "line": 219,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 219,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 7740,
                                    "end": 7749,
                                    "loc": {
                                      "start": {
                                        "line": 219,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 219,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7740,
                                      "end": 7744,
                                      "loc": {
                                        "start": {
                                          "line": 219,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 219,
                                          "column": 31
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7745,
                                      "end": 7749,
                                      "loc": {
                                        "start": {
                                          "line": 219,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 219,
                                          "column": 36
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7750,
                                    "end": 7760,
                                    "loc": {
                                      "start": {
                                        "line": 219,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 219,
                                        "column": 47
                                      }
                                    },
                                    "name": "invalidate"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 7788,
      "end": 8504,
      "loc": {
        "start": {
          "line": 224,
          "column": 0
        },
        "end": {
          "line": 241,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 7788,
        "end": 8504,
        "loc": {
          "start": {
            "line": 224,
            "column": 0
          },
          "end": {
            "line": 241,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 7788,
          "end": 7819,
          "loc": {
            "start": {
              "line": 224,
              "column": 0
            },
            "end": {
              "line": 224,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 7788,
            "end": 7812,
            "loc": {
              "start": {
                "line": 224,
                "column": 0
              },
              "end": {
                "line": 224,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 7788,
              "end": 7802,
              "loc": {
                "start": {
                  "line": 224,
                  "column": 0
                },
                "end": {
                  "line": 224,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 7788,
                "end": 7793,
                "loc": {
                  "start": {
                    "line": 224,
                    "column": 0
                  },
                  "end": {
                    "line": 224,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 7794,
                "end": 7802,
                "loc": {
                  "start": {
                    "line": 224,
                    "column": 6
                  },
                  "end": {
                    "line": 224,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 7803,
              "end": 7812,
              "loc": {
                "start": {
                  "line": 224,
                  "column": 15
                },
                "end": {
                  "line": 224,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 7813,
            "end": 7819,
            "loc": {
              "start": {
                "line": 224,
                "column": 25
              },
              "end": {
                "line": 224,
                "column": 31
              }
            },
            "name": "remove"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 7822,
          "end": 8504,
          "loc": {
            "start": {
              "line": 224,
              "column": 34
            },
            "end": {
              "line": 241,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 7813,
            "end": 7819,
            "loc": {
              "start": {
                "line": 224,
                "column": 25
              },
              "end": {
                "line": 224,
                "column": 31
              }
            },
            "name": "remove"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 7831,
              "end": 7837,
              "loc": {
                "start": {
                  "line": 224,
                  "column": 43
                },
                "end": {
                  "line": 224,
                  "column": 49
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 7839,
            "end": 8504,
            "loc": {
              "start": {
                "line": 224,
                "column": 51
              },
              "end": {
                "line": 241,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 7846,
                "end": 7909,
                "loc": {
                  "start": {
                    "line": 225,
                    "column": 4
                  },
                  "end": {
                    "line": 225,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 7846,
                  "end": 7908,
                  "loc": {
                    "start": {
                      "line": 225,
                      "column": 4
                    },
                    "end": {
                      "line": 225,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 7846,
                    "end": 7852,
                    "loc": {
                      "start": {
                        "line": 225,
                        "column": 4
                      },
                      "end": {
                        "line": 225,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 7855,
                    "end": 7908,
                    "loc": {
                      "start": {
                        "line": 225,
                        "column": 13
                      },
                      "end": {
                        "line": 225,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 7855,
                      "end": 7875,
                      "loc": {
                        "start": {
                          "line": 225,
                          "column": 13
                        },
                        "end": {
                          "line": 225,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 7855,
                        "end": 7871,
                        "loc": {
                          "start": {
                            "line": 225,
                            "column": 13
                          },
                          "end": {
                            "line": 225,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 7855,
                          "end": 7864,
                          "loc": {
                            "start": {
                              "line": 225,
                              "column": 13
                            },
                            "end": {
                              "line": 225,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7865,
                          "end": 7871,
                          "loc": {
                            "start": {
                              "line": 225,
                              "column": 23
                            },
                            "end": {
                              "line": 225,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 7874,
                        "end": 7875,
                        "loc": {
                          "start": {
                            "line": 225,
                            "column": 32
                          },
                          "end": {
                            "line": 225,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 7878,
                      "end": 7899,
                      "loc": {
                        "start": {
                          "line": 225,
                          "column": 36
                        },
                        "end": {
                          "line": 225,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 7878,
                        "end": 7888,
                        "loc": {
                          "start": {
                            "line": 225,
                            "column": 36
                          },
                          "end": {
                            "line": 225,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 7878,
                          "end": 7883,
                          "loc": {
                            "start": {
                              "line": 225,
                              "column": 36
                            },
                            "end": {
                              "line": 225,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7884,
                          "end": 7888,
                          "loc": {
                            "start": {
                              "line": 225,
                              "column": 42
                            },
                            "end": {
                              "line": 225,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 7889,
                          "end": 7898,
                          "loc": {
                            "start": {
                              "line": 225,
                              "column": 47
                            },
                            "end": {
                              "line": 225,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 7902,
                      "end": 7908,
                      "loc": {
                        "start": {
                          "line": 225,
                          "column": 60
                        },
                        "end": {
                          "line": 225,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 7915,
                "end": 8018,
                "loc": {
                  "start": {
                    "line": 226,
                    "column": 4
                  },
                  "end": {
                    "line": 228,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 7919,
                  "end": 7940,
                  "loc": {
                    "start": {
                      "line": 226,
                      "column": 8
                    },
                    "end": {
                      "line": 226,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 7919,
                    "end": 7932,
                    "loc": {
                      "start": {
                        "line": 226,
                        "column": 8
                      },
                      "end": {
                        "line": 226,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 7919,
                      "end": 7924,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 8
                        },
                        "end": {
                          "line": 226,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 7925,
                      "end": 7932,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 14
                        },
                        "end": {
                          "line": 226,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 7933,
                      "end": 7939,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 22
                        },
                        "end": {
                          "line": 226,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 7942,
                  "end": 8018,
                  "loc": {
                    "start": {
                      "line": 226,
                      "column": 31
                    },
                    "end": {
                      "line": 228,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 7953,
                      "end": 8011,
                      "loc": {
                        "start": {
                          "line": 227,
                          "column": 8
                        },
                        "end": {
                          "line": 227,
                          "column": 66
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 7960,
                        "end": 8010,
                        "loc": {
                          "start": {
                            "line": 227,
                            "column": 15
                          },
                          "end": {
                            "line": 227,
                            "column": 65
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7960,
                          "end": 7971,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 15
                            },
                            "end": {
                              "line": 227,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7960,
                            "end": 7967,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 15
                              },
                              "end": {
                                "line": 227,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7968,
                            "end": 7971,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 23
                              },
                              "end": {
                                "line": 227,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 7972,
                            "end": 8009,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 27
                              },
                              "end": {
                                "line": 227,
                                "column": 64
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7972,
                              "end": 7982,
                              "loc": {
                                "start": {
                                  "line": 227,
                                  "column": 27
                                },
                                "end": {
                                  "line": 227,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7972,
                                "end": 7978,
                                "loc": {
                                  "start": {
                                    "line": 227,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 227,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7979,
                                "end": 7982,
                                "loc": {
                                  "start": {
                                    "line": 227,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 227,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 7983,
                                "end": 8008,
                                "loc": {
                                  "start": {
                                    "line": 227,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 227,
                                    "column": 63
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 7983,
                                    "end": 7987,
                                    "loc": {
                                      "start": {
                                        "line": 227,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 227,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 7991,
                                  "end": 8008,
                                  "loc": {
                                    "start": {
                                      "line": 227,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 227,
                                      "column": 63
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 7991,
                                    "end": 8002,
                                    "loc": {
                                      "start": {
                                        "line": 227,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 227,
                                        "column": 57
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7991,
                                      "end": 7995,
                                      "loc": {
                                        "start": {
                                          "line": 227,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 227,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7996,
                                      "end": 8002,
                                      "loc": {
                                        "start": {
                                          "line": 227,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 227,
                                          "column": 57
                                        }
                                      },
                                      "name": "remove"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 8003,
                                      "end": 8007,
                                      "loc": {
                                        "start": {
                                          "line": 227,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 227,
                                          "column": 62
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 8026,
                "end": 8501,
                "loc": {
                  "start": {
                    "line": 230,
                    "column": 4
                  },
                  "end": {
                    "line": 240,
                    "column": 5
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 8030,
                  "end": 8062,
                  "loc": {
                    "start": {
                      "line": 230,
                      "column": 8
                    },
                    "end": {
                      "line": 230,
                      "column": 40
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 8030,
                    "end": 8036,
                    "loc": {
                      "start": {
                        "line": 230,
                        "column": 8
                      },
                      "end": {
                        "line": 230,
                        "column": 14
                      }
                    },
                    "name": "object"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "MemberExpression",
                    "start": 8048,
                    "end": 8062,
                    "loc": {
                      "start": {
                        "line": 230,
                        "column": 26
                      },
                      "end": {
                        "line": 230,
                        "column": 40
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 8048,
                      "end": 8053,
                      "loc": {
                        "start": {
                          "line": 230,
                          "column": 26
                        },
                        "end": {
                          "line": 230,
                          "column": 31
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8054,
                      "end": 8062,
                      "loc": {
                        "start": {
                          "line": 230,
                          "column": 32
                        },
                        "end": {
                          "line": 230,
                          "column": 40
                        }
                      },
                      "name": "Object3D"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 8064,
                  "end": 8501,
                  "loc": {
                    "start": {
                      "line": 230,
                      "column": 42
                    },
                    "end": {
                      "line": 240,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 8075,
                      "end": 8117,
                      "loc": {
                        "start": {
                          "line": 231,
                          "column": 8
                        },
                        "end": {
                          "line": 231,
                          "column": 50
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8079,
                          "end": 8116,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 12
                            },
                            "end": {
                              "line": 231,
                              "column": 49
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8079,
                            "end": 8084,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 12
                              },
                              "end": {
                                "line": 231,
                                "column": 17
                              }
                            },
                            "name": "index"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 8087,
                            "end": 8116,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 20
                              },
                              "end": {
                                "line": 231,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 8087,
                              "end": 8108,
                              "loc": {
                                "start": {
                                  "line": 231,
                                  "column": 20
                                },
                                "end": {
                                  "line": 231,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 8087,
                                "end": 8100,
                                "loc": {
                                  "start": {
                                    "line": 231,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 231,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 8087,
                                  "end": 8091,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 24
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8092,
                                  "end": 8100,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 33
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8101,
                                "end": 8108,
                                "loc": {
                                  "start": {
                                    "line": 231,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 231,
                                    "column": 41
                                  }
                                },
                                "name": "indexOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 8109,
                                "end": 8115,
                                "loc": {
                                  "start": {
                                    "line": 231,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 231,
                                    "column": 48
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 8127,
                      "end": 8494,
                      "loc": {
                        "start": {
                          "line": 232,
                          "column": 8
                        },
                        "end": {
                          "line": 239,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 8131,
                        "end": 8143,
                        "loc": {
                          "start": {
                            "line": 232,
                            "column": 12
                          },
                          "end": {
                            "line": 232,
                            "column": 24
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 8131,
                          "end": 8136,
                          "loc": {
                            "start": {
                              "line": 232,
                              "column": 12
                            },
                            "end": {
                              "line": 232,
                              "column": 17
                            }
                          },
                          "name": "index"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "UnaryExpression",
                          "start": 8141,
                          "end": 8143,
                          "loc": {
                            "start": {
                              "line": 232,
                              "column": 22
                            },
                            "end": {
                              "line": 232,
                              "column": 24
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 8142,
                            "end": 8143,
                            "loc": {
                              "start": {
                                "line": 232,
                                "column": 23
                              },
                              "end": {
                                "line": 232,
                                "column": 24
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 8145,
                        "end": 8494,
                        "loc": {
                          "start": {
                            "line": 232,
                            "column": 26
                          },
                          "end": {
                            "line": 239,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 8160,
                            "end": 8228,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 12
                              },
                              "end": {
                                "line": 233,
                                "column": 80
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 8160,
                              "end": 8227,
                              "loc": {
                                "start": {
                                  "line": 233,
                                  "column": 12
                                },
                                "end": {
                                  "line": 233,
                                  "column": 79
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8160,
                                "end": 8169,
                                "loc": {
                                  "start": {
                                    "line": 233,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 233,
                                    "column": 21
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 8160,
                                  "end": 8164,
                                  "loc": {
                                    "start": {
                                      "line": 233,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 233,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8165,
                                  "end": 8169,
                                  "loc": {
                                    "start": {
                                      "line": 233,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 233,
                                      "column": 21
                                    }
                                  },
                                  "name": "emit"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 8170,
                                  "end": 8207,
                                  "loc": {
                                    "start": {
                                      "line": 233,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 233,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8170,
                                    "end": 8194,
                                    "loc": {
                                      "start": {
                                        "line": 233,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 233,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 8170,
                                      "end": 8184,
                                      "loc": {
                                        "start": {
                                          "line": 233,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 233,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8170,
                                        "end": 8177,
                                        "loc": {
                                          "start": {
                                            "line": 233,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 233,
                                            "column": 29
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8178,
                                        "end": 8184,
                                        "loc": {
                                          "start": {
                                            "line": 233,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 233,
                                            "column": 36
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8185,
                                      "end": 8194,
                                      "loc": {
                                        "start": {
                                          "line": 233,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 233,
                                          "column": 46
                                        }
                                      },
                                      "name": "Lifecycle"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8195,
                                    "end": 8207,
                                    "loc": {
                                      "start": {
                                        "line": 233,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 233,
                                        "column": 59
                                      }
                                    },
                                    "name": "ChildRemoved"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "ObjectExpression",
                                  "start": 8209,
                                  "end": 8226,
                                  "loc": {
                                    "start": {
                                      "line": 233,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 233,
                                      "column": 78
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 8211,
                                      "end": 8224,
                                      "loc": {
                                        "start": {
                                          "line": 233,
                                          "column": 63
                                        },
                                        "end": {
                                          "line": 233,
                                          "column": 76
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 8211,
                                        "end": 8216,
                                        "loc": {
                                          "start": {
                                            "line": 233,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 233,
                                            "column": 68
                                          }
                                        },
                                        "name": "child"
                                      },
                                      "value": {
                                        "type": "Identifier",
                                        "start": 8218,
                                        "end": 8224,
                                        "loc": {
                                          "start": {
                                            "line": 233,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 233,
                                            "column": 76
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8242,
                            "end": 8306,
                            "loc": {
                              "start": {
                                "line": 234,
                                "column": 12
                              },
                              "end": {
                                "line": 234,
                                "column": 76
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 8242,
                              "end": 8305,
                              "loc": {
                                "start": {
                                  "line": 234,
                                  "column": 12
                                },
                                "end": {
                                  "line": 234,
                                  "column": 75
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8242,
                                "end": 8253,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8242,
                                  "end": 8248,
                                  "loc": {
                                    "start": {
                                      "line": 234,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 234,
                                      "column": 18
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8249,
                                  "end": 8253,
                                  "loc": {
                                    "start": {
                                      "line": 234,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 234,
                                      "column": 23
                                    }
                                  },
                                  "name": "emit"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 8254,
                                  "end": 8286,
                                  "loc": {
                                    "start": {
                                      "line": 234,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 234,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8254,
                                    "end": 8278,
                                    "loc": {
                                      "start": {
                                        "line": 234,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 234,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 8254,
                                      "end": 8268,
                                      "loc": {
                                        "start": {
                                          "line": 234,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 234,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8254,
                                        "end": 8261,
                                        "loc": {
                                          "start": {
                                            "line": 234,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 234,
                                            "column": 31
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8262,
                                        "end": 8268,
                                        "loc": {
                                          "start": {
                                            "line": 234,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 234,
                                            "column": 38
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8269,
                                      "end": 8278,
                                      "loc": {
                                        "start": {
                                          "line": 234,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 234,
                                          "column": 48
                                        }
                                      },
                                      "name": "Lifecycle"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8279,
                                    "end": 8286,
                                    "loc": {
                                      "start": {
                                        "line": 234,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 234,
                                        "column": 56
                                      }
                                    },
                                    "name": "Removed"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "ObjectExpression",
                                  "start": 8288,
                                  "end": 8304,
                                  "loc": {
                                    "start": {
                                      "line": 234,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 234,
                                      "column": 74
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 8290,
                                      "end": 8302,
                                      "loc": {
                                        "start": {
                                          "line": 234,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 234,
                                          "column": 72
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 8290,
                                        "end": 8296,
                                        "loc": {
                                          "start": {
                                            "line": 234,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 234,
                                            "column": 66
                                          }
                                        },
                                        "name": "parent"
                                      },
                                      "value": {
                                        "type": "ThisExpression",
                                        "start": 8298,
                                        "end": 8302,
                                        "loc": {
                                          "start": {
                                            "line": 234,
                                            "column": 68
                                          },
                                          "end": {
                                            "line": 234,
                                            "column": 72
                                          }
                                        }
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8320,
                            "end": 8351,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 12
                              },
                              "end": {
                                "line": 235,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 8320,
                              "end": 8350,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 12
                                },
                                "end": {
                                  "line": 235,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8320,
                                "end": 8340,
                                "loc": {
                                  "start": {
                                    "line": 235,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 235,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8320,
                                  "end": 8333,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 8320,
                                    "end": 8324,
                                    "loc": {
                                      "start": {
                                        "line": 235,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 235,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8325,
                                    "end": 8333,
                                    "loc": {
                                      "start": {
                                        "line": 235,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 235,
                                        "column": 25
                                      }
                                    },
                                    "name": "children"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8334,
                                  "end": 8340,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 32
                                    }
                                  },
                                  "name": "splice"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 8341,
                                  "end": 8346,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 38
                                    }
                                  },
                                  "name": "index"
                                },
                                {
                                  "type": "Literal",
                                  "start": 8348,
                                  "end": 8349,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 41
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8365,
                            "end": 8386,
                            "loc": {
                              "start": {
                                "line": 236,
                                "column": 12
                              },
                              "end": {
                                "line": 236,
                                "column": 33
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 8365,
                              "end": 8385,
                              "loc": {
                                "start": {
                                  "line": 236,
                                  "column": 12
                                },
                                "end": {
                                  "line": 236,
                                  "column": 32
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 8365,
                                "end": 8378,
                                "loc": {
                                  "start": {
                                    "line": 236,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 236,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8365,
                                  "end": 8371,
                                  "loc": {
                                    "start": {
                                      "line": 236,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 236,
                                      "column": 18
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8372,
                                  "end": 8378,
                                  "loc": {
                                    "start": {
                                      "line": 236,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 236,
                                      "column": 25
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 8381,
                                "end": 8385,
                                "loc": {
                                  "start": {
                                    "line": 236,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 236,
                                    "column": 32
                                  }
                                },
                                "value": null,
                                "rawValue": null,
                                "raw": "null"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8400,
                            "end": 8431,
                            "loc": {
                              "start": {
                                "line": 237,
                                "column": 12
                              },
                              "end": {
                                "line": 237,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 8400,
                              "end": 8430,
                              "loc": {
                                "start": {
                                  "line": 237,
                                  "column": 12
                                },
                                "end": {
                                  "line": 237,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 8400,
                                "end": 8416,
                                "loc": {
                                  "start": {
                                    "line": 237,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 237,
                                    "column": 28
                                  }
                                },
                                "name": "updateReferences"
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 8417,
                                  "end": 8421,
                                  "loc": {
                                    "start": {
                                      "line": 237,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 237,
                                      "column": 33
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 8423,
                                  "end": 8429,
                                  "loc": {
                                    "start": {
                                      "line": 237,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 237,
                                      "column": 41
                                    }
                                  },
                                  "name": "object"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8445,
                            "end": 8483,
                            "loc": {
                              "start": {
                                "line": 238,
                                "column": 12
                              },
                              "end": {
                                "line": 238,
                                "column": 50
                              }
                            },
                            "expression": {
                              "type": "LogicalExpression",
                              "start": 8445,
                              "end": 8482,
                              "loc": {
                                "start": {
                                  "line": 238,
                                  "column": 12
                                },
                                "end": {
                                  "line": 238,
                                  "column": 49
                                }
                              },
                              "left": {
                                "type": "UnaryExpression",
                                "start": 8445,
                                "end": 8456,
                                "loc": {
                                  "start": {
                                    "line": 238,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 238,
                                    "column": 23
                                  }
                                },
                                "operator": "!",
                                "prefix": true,
                                "argument": {
                                  "type": "UnaryExpression",
                                  "start": 8446,
                                  "end": 8456,
                                  "loc": {
                                    "start": {
                                      "line": 238,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 238,
                                      "column": 23
                                    }
                                  },
                                  "operator": "!",
                                  "prefix": true,
                                  "argument": {
                                    "type": "MemberExpression",
                                    "start": 8447,
                                    "end": 8456,
                                    "loc": {
                                      "start": {
                                        "line": 238,
                                        "column": 14
                                      },
                                      "end": {
                                        "line": 238,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8447,
                                      "end": 8451,
                                      "loc": {
                                        "start": {
                                          "line": 238,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 238,
                                          "column": 18
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8452,
                                      "end": 8456,
                                      "loc": {
                                        "start": {
                                          "line": 238,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 238,
                                          "column": 23
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  }
                                }
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 8460,
                                "end": 8482,
                                "loc": {
                                  "start": {
                                    "line": 238,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 238,
                                    "column": 49
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8460,
                                  "end": 8480,
                                  "loc": {
                                    "start": {
                                      "line": 238,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 238,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8460,
                                    "end": 8469,
                                    "loc": {
                                      "start": {
                                        "line": 238,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 238,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8460,
                                      "end": 8464,
                                      "loc": {
                                        "start": {
                                          "line": 238,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 238,
                                          "column": 31
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8465,
                                      "end": 8469,
                                      "loc": {
                                        "start": {
                                          "line": 238,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 238,
                                          "column": 36
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8470,
                                    "end": 8480,
                                    "loc": {
                                      "start": {
                                        "line": 238,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 238,
                                        "column": 47
                                      }
                                    },
                                    "name": "invalidate"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 8508,
      "end": 8618,
      "loc": {
        "start": {
          "line": 243,
          "column": 0
        },
        "end": {
          "line": 246,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 8508,
        "end": 8618,
        "loc": {
          "start": {
            "line": 243,
            "column": 0
          },
          "end": {
            "line": 246,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 8508,
          "end": 8551,
          "loc": {
            "start": {
              "line": 243,
              "column": 0
            },
            "end": {
              "line": 243,
              "column": 43
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 8508,
            "end": 8532,
            "loc": {
              "start": {
                "line": 243,
                "column": 0
              },
              "end": {
                "line": 243,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 8508,
              "end": 8522,
              "loc": {
                "start": {
                  "line": 243,
                  "column": 0
                },
                "end": {
                  "line": 243,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 8508,
                "end": 8513,
                "loc": {
                  "start": {
                    "line": 243,
                    "column": 0
                  },
                  "end": {
                    "line": 243,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 8514,
                "end": 8522,
                "loc": {
                  "start": {
                    "line": 243,
                    "column": 6
                  },
                  "end": {
                    "line": 243,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 8523,
              "end": 8532,
              "loc": {
                "start": {
                  "line": 243,
                  "column": 15
                },
                "end": {
                  "line": 243,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 8533,
            "end": 8551,
            "loc": {
              "start": {
                "line": 243,
                "column": 25
              },
              "end": {
                "line": 243,
                "column": 43
              }
            },
            "name": "removeObjectTweens"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 8554,
          "end": 8618,
          "loc": {
            "start": {
              "line": 243,
              "column": 46
            },
            "end": {
              "line": 246,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 8533,
            "end": 8551,
            "loc": {
              "start": {
                "line": 243,
                "column": 25
              },
              "end": {
                "line": 243,
                "column": 43
              }
            },
            "name": "removeObjectTweens"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 8565,
            "end": 8618,
            "loc": {
              "start": {
                "line": 243,
                "column": 57
              },
              "end": {
                "line": 246,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 8569,
                "end": 8600,
                "loc": {
                  "start": {
                    "line": 244,
                    "column": 1
                  },
                  "end": {
                    "line": 244,
                    "column": 32
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 8569,
                  "end": 8599,
                  "loc": {
                    "start": {
                      "line": 244,
                      "column": 1
                    },
                    "end": {
                      "line": 244,
                      "column": 31
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 8569,
                    "end": 8593,
                    "loc": {
                      "start": {
                        "line": 244,
                        "column": 1
                      },
                      "end": {
                        "line": 244,
                        "column": 25
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 8569,
                      "end": 8574,
                      "loc": {
                        "start": {
                          "line": 244,
                          "column": 1
                        },
                        "end": {
                          "line": 244,
                          "column": 6
                        }
                      },
                      "name": "Tween"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8575,
                      "end": 8593,
                      "loc": {
                        "start": {
                          "line": 244,
                          "column": 7
                        },
                        "end": {
                          "line": 244,
                          "column": 25
                        }
                      },
                      "name": "removeObjectTweens"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ThisExpression",
                      "start": 8594,
                      "end": 8598,
                      "loc": {
                        "start": {
                          "line": 244,
                          "column": 26
                        },
                        "end": {
                          "line": 244,
                          "column": 30
                        }
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 8603,
                "end": 8615,
                "loc": {
                  "start": {
                    "line": 245,
                    "column": 1
                  },
                  "end": {
                    "line": 245,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 8610,
                  "end": 8614,
                  "loc": {
                    "start": {
                      "line": 245,
                      "column": 8
                    },
                    "end": {
                      "line": 245,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "FunctionDeclaration",
      "start": 8622,
      "end": 8785,
      "loc": {
        "start": {
          "line": 248,
          "column": 0
        },
        "end": {
          "line": 252,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 8631,
        "end": 8639,
        "loc": {
          "start": {
            "line": 248,
            "column": 9
          },
          "end": {
            "line": 248,
            "column": 17
          }
        },
        "name": "traverse"
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 8640,
          "end": 8643,
          "loc": {
            "start": {
              "line": 248,
              "column": 18
            },
            "end": {
              "line": 248,
              "column": 21
            }
          },
          "name": "obj"
        },
        {
          "type": "Identifier",
          "start": 8645,
          "end": 8647,
          "loc": {
            "start": {
              "line": 248,
              "column": 23
            },
            "end": {
              "line": 248,
              "column": 25
            }
          },
          "name": "cb"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 8649,
        "end": 8785,
        "loc": {
          "start": {
            "line": 248,
            "column": 27
          },
          "end": {
            "line": 252,
            "column": 1
          }
        },
        "body": [
          {
            "type": "IfStatement",
            "start": 8656,
            "end": 8684,
            "loc": {
              "start": {
                "line": 249,
                "column": 4
              },
              "end": {
                "line": 249,
                "column": 32
              }
            },
            "test": {
              "type": "UnaryExpression",
              "start": 8660,
              "end": 8674,
              "loc": {
                "start": {
                  "line": 249,
                  "column": 8
                },
                "end": {
                  "line": 249,
                  "column": 22
                }
              },
              "operator": "!",
              "prefix": true,
              "argument": {
                "type": "UnaryExpression",
                "start": 8661,
                "end": 8674,
                "loc": {
                  "start": {
                    "line": 249,
                    "column": 9
                  },
                  "end": {
                    "line": 249,
                    "column": 22
                  }
                },
                "operator": "!",
                "prefix": true,
                "argument": {
                  "type": "MemberExpression",
                  "start": 8662,
                  "end": 8674,
                  "loc": {
                    "start": {
                      "line": 249,
                      "column": 10
                    },
                    "end": {
                      "line": 249,
                      "column": 22
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 8662,
                    "end": 8665,
                    "loc": {
                      "start": {
                        "line": 249,
                        "column": 10
                      },
                      "end": {
                        "line": 249,
                        "column": 13
                      }
                    },
                    "name": "obj"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 8666,
                    "end": 8674,
                    "loc": {
                      "start": {
                        "line": 249,
                        "column": 14
                      },
                      "end": {
                        "line": 249,
                        "column": 22
                      }
                    },
                    "name": "material"
                  },
                  "computed": false
                }
              }
            },
            "consequent": {
              "type": "ExpressionStatement",
              "start": 8676,
              "end": 8684,
              "loc": {
                "start": {
                  "line": 249,
                  "column": 24
                },
                "end": {
                  "line": 249,
                  "column": 32
                }
              },
              "expression": {
                "type": "CallExpression",
                "start": 8676,
                "end": 8683,
                "loc": {
                  "start": {
                    "line": 249,
                    "column": 24
                  },
                  "end": {
                    "line": 249,
                    "column": 31
                  }
                },
                "callee": {
                  "type": "Identifier",
                  "start": 8676,
                  "end": 8678,
                  "loc": {
                    "start": {
                      "line": 249,
                      "column": 24
                    },
                    "end": {
                      "line": 249,
                      "column": 26
                    }
                  },
                  "name": "cb"
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 8679,
                    "end": 8682,
                    "loc": {
                      "start": {
                        "line": 249,
                        "column": 27
                      },
                      "end": {
                        "line": 249,
                        "column": 30
                      }
                    },
                    "name": "obj"
                  }
                ]
              }
            },
            "alternate": null
          },
          {
            "type": "ForOfStatement",
            "start": 8690,
            "end": 8782,
            "loc": {
              "start": {
                "line": 250,
                "column": 4
              },
              "end": {
                "line": 251,
                "column": 59
              }
            },
            "left": {
              "type": "VariableDeclaration",
              "start": 8695,
              "end": 8704,
              "loc": {
                "start": {
                  "line": 250,
                  "column": 9
                },
                "end": {
                  "line": 250,
                  "column": 18
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 8699,
                  "end": 8704,
                  "loc": {
                    "start": {
                      "line": 250,
                      "column": 13
                    },
                    "end": {
                      "line": 250,
                      "column": 18
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 8699,
                    "end": 8704,
                    "loc": {
                      "start": {
                        "line": 250,
                        "column": 13
                      },
                      "end": {
                        "line": 250,
                        "column": 18
                      }
                    },
                    "name": "child"
                  },
                  "init": null
                }
              ],
              "kind": "let"
            },
            "right": {
              "type": "MemberExpression",
              "start": 8708,
              "end": 8720,
              "loc": {
                "start": {
                  "line": 250,
                  "column": 22
                },
                "end": {
                  "line": 250,
                  "column": 34
                }
              },
              "object": {
                "type": "Identifier",
                "start": 8708,
                "end": 8711,
                "loc": {
                  "start": {
                    "line": 250,
                    "column": 22
                  },
                  "end": {
                    "line": 250,
                    "column": 25
                  }
                },
                "name": "obj"
              },
              "property": {
                "type": "Identifier",
                "start": 8712,
                "end": 8720,
                "loc": {
                  "start": {
                    "line": 250,
                    "column": 26
                  },
                  "end": {
                    "line": 250,
                    "column": 34
                  }
                },
                "name": "children"
              },
              "computed": false
            },
            "body": {
              "type": "ExpressionStatement",
              "start": 8731,
              "end": 8782,
              "loc": {
                "start": {
                  "line": 251,
                  "column": 8
                },
                "end": {
                  "line": 251,
                  "column": 59
                }
              },
              "expression": {
                "type": "LogicalExpression",
                "start": 8731,
                "end": 8781,
                "loc": {
                  "start": {
                    "line": 251,
                    "column": 8
                  },
                  "end": {
                    "line": 251,
                    "column": 58
                  }
                },
                "left": {
                  "type": "MemberExpression",
                  "start": 8731,
                  "end": 8758,
                  "loc": {
                    "start": {
                      "line": 251,
                      "column": 8
                    },
                    "end": {
                      "line": 251,
                      "column": 35
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 8731,
                    "end": 8736,
                    "loc": {
                      "start": {
                        "line": 251,
                        "column": 8
                      },
                      "end": {
                        "line": 251,
                        "column": 13
                      }
                    },
                    "name": "child"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 8737,
                    "end": 8758,
                    "loc": {
                      "start": {
                        "line": 251,
                        "column": 14
                      },
                      "end": {
                        "line": 251,
                        "column": 35
                      }
                    },
                    "name": "updateParentMaterials"
                  },
                  "computed": false
                },
                "operator": "&&",
                "right": {
                  "type": "CallExpression",
                  "start": 8762,
                  "end": 8781,
                  "loc": {
                    "start": {
                      "line": 251,
                      "column": 39
                    },
                    "end": {
                      "line": 251,
                      "column": 58
                    }
                  },
                  "callee": {
                    "type": "Identifier",
                    "start": 8762,
                    "end": 8770,
                    "loc": {
                      "start": {
                        "line": 251,
                        "column": 39
                      },
                      "end": {
                        "line": 251,
                        "column": 47
                      }
                    },
                    "name": "traverse"
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 8771,
                      "end": 8776,
                      "loc": {
                        "start": {
                          "line": 251,
                          "column": 48
                        },
                        "end": {
                          "line": 251,
                          "column": 53
                        }
                      },
                      "name": "child"
                    },
                    {
                      "type": "Identifier",
                      "start": 8778,
                      "end": 8780,
                      "loc": {
                        "start": {
                          "line": 251,
                          "column": 55
                        },
                        "end": {
                          "line": 251,
                          "column": 57
                        }
                      },
                      "name": "cb"
                    }
                  ]
                }
              }
            }
          }
        ]
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 8789,
      "end": 9453,
      "loc": {
        "start": {
          "line": 254,
          "column": 0
        },
        "end": {
          "line": 277,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 8789,
        "end": 9453,
        "loc": {
          "start": {
            "line": 254,
            "column": 0
          },
          "end": {
            "line": 277,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 8789,
          "end": 8829,
          "loc": {
            "start": {
              "line": 254,
              "column": 0
            },
            "end": {
              "line": 254,
              "column": 40
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 8789,
            "end": 8813,
            "loc": {
              "start": {
                "line": 254,
                "column": 0
              },
              "end": {
                "line": 254,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 8789,
              "end": 8803,
              "loc": {
                "start": {
                  "line": 254,
                  "column": 0
                },
                "end": {
                  "line": 254,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 8789,
                "end": 8794,
                "loc": {
                  "start": {
                    "line": 254,
                    "column": 0
                  },
                  "end": {
                    "line": 254,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 8795,
                "end": 8803,
                "loc": {
                  "start": {
                    "line": 254,
                    "column": 6
                  },
                  "end": {
                    "line": 254,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 8804,
              "end": 8813,
              "loc": {
                "start": {
                  "line": 254,
                  "column": 15
                },
                "end": {
                  "line": 254,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 8814,
            "end": 8829,
            "loc": {
              "start": {
                "line": 254,
                "column": 25
              },
              "end": {
                "line": 254,
                "column": 40
              }
            },
            "name": "updateMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 8832,
          "end": 9453,
          "loc": {
            "start": {
              "line": 254,
              "column": 43
            },
            "end": {
              "line": 277,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 8814,
            "end": 8829,
            "loc": {
              "start": {
                "line": 254,
                "column": 25
              },
              "end": {
                "line": 254,
                "column": 40
              }
            },
            "name": "updateMaterials"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 8843,
            "end": 9453,
            "loc": {
              "start": {
                "line": 254,
                "column": 54
              },
              "end": {
                "line": 277,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 8850,
                "end": 8868,
                "loc": {
                  "start": {
                    "line": 255,
                    "column": 4
                  },
                  "end": {
                    "line": 255,
                    "column": 22
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 8854,
                    "end": 8867,
                    "loc": {
                      "start": {
                        "line": 255,
                        "column": 8
                      },
                      "end": {
                        "line": 255,
                        "column": 21
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 8854,
                      "end": 8862,
                      "loc": {
                        "start": {
                          "line": 255,
                          "column": 8
                        },
                        "end": {
                          "line": 255,
                          "column": 16
                        }
                      },
                      "name": "colorMap"
                    },
                    "init": {
                      "type": "ObjectExpression",
                      "start": 8865,
                      "end": 8867,
                      "loc": {
                        "start": {
                          "line": 255,
                          "column": 19
                        },
                        "end": {
                          "line": 255,
                          "column": 21
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "ExpressionStatement",
                "start": 8871,
                "end": 8975,
                "loc": {
                  "start": {
                    "line": 256,
                    "column": 1
                  },
                  "end": {
                    "line": 261,
                    "column": 3
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 8871,
                  "end": 8974,
                  "loc": {
                    "start": {
                      "line": 256,
                      "column": 1
                    },
                    "end": {
                      "line": 261,
                      "column": 2
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 8871,
                    "end": 8885,
                    "loc": {
                      "start": {
                        "line": 256,
                        "column": 1
                      },
                      "end": {
                        "line": 256,
                        "column": 15
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 8871,
                      "end": 8875,
                      "loc": {
                        "start": {
                          "line": 256,
                          "column": 1
                        },
                        "end": {
                          "line": 256,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8876,
                      "end": 8885,
                      "loc": {
                        "start": {
                          "line": 256,
                          "column": 6
                        },
                        "end": {
                          "line": 256,
                          "column": 15
                        }
                      },
                      "name": "materials"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "LogicalExpression",
                    "start": 8888,
                    "end": 8974,
                    "loc": {
                      "start": {
                        "line": 256,
                        "column": 18
                      },
                      "end": {
                        "line": 261,
                        "column": 2
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 8888,
                      "end": 8902,
                      "loc": {
                        "start": {
                          "line": 256,
                          "column": 18
                        },
                        "end": {
                          "line": 256,
                          "column": 32
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 8888,
                        "end": 8892,
                        "loc": {
                          "start": {
                            "line": 256,
                            "column": 18
                          },
                          "end": {
                            "line": 256,
                            "column": 22
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 8893,
                        "end": 8902,
                        "loc": {
                          "start": {
                            "line": 256,
                            "column": 23
                          },
                          "end": {
                            "line": 256,
                            "column": 32
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "operator": "||",
                    "right": {
                      "type": "ObjectExpression",
                      "start": 8906,
                      "end": 8974,
                      "loc": {
                        "start": {
                          "line": 256,
                          "column": 36
                        },
                        "end": {
                          "line": 261,
                          "column": 2
                        }
                      },
                      "properties": [
                        {
                          "type": "Property",
                          "start": 8911,
                          "end": 8929,
                          "loc": {
                            "start": {
                              "line": 257,
                              "column": 2
                            },
                            "end": {
                              "line": 257,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8911,
                            "end": 8923,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 2
                              },
                              "end": {
                                "line": 257,
                                "column": 14
                              }
                            },
                            "name": "updateParent"
                          },
                          "value": {
                            "type": "Literal",
                            "start": 8925,
                            "end": 8929,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 16
                              },
                              "end": {
                                "line": 257,
                                "column": 20
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 8934,
                          "end": 8941,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 2
                            },
                            "end": {
                              "line": 258,
                              "column": 9
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8934,
                            "end": 8937,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 2
                              },
                              "end": {
                                "line": 258,
                                "column": 5
                              }
                            },
                            "name": "all"
                          },
                          "value": {
                            "type": "ArrayExpression",
                            "start": 8939,
                            "end": 8941,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 7
                              },
                              "end": {
                                "line": 258,
                                "column": 9
                              }
                            },
                            "elements": []
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 8946,
                          "end": 8956,
                          "loc": {
                            "start": {
                              "line": 259,
                              "column": 2
                            },
                            "end": {
                              "line": 259,
                              "column": 12
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8946,
                            "end": 8952,
                            "loc": {
                              "start": {
                                "line": 259,
                                "column": 2
                              },
                              "end": {
                                "line": 259,
                                "column": 8
                              }
                            },
                            "name": "meshes"
                          },
                          "value": {
                            "type": "ArrayExpression",
                            "start": 8954,
                            "end": 8956,
                            "loc": {
                              "start": {
                                "line": 259,
                                "column": 10
                              },
                              "end": {
                                "line": 259,
                                "column": 12
                              }
                            },
                            "elements": []
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 8961,
                          "end": 8970,
                          "loc": {
                            "start": {
                              "line": 260,
                              "column": 2
                            },
                            "end": {
                              "line": 260,
                              "column": 11
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8961,
                            "end": 8966,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 2
                              },
                              "end": {
                                "line": 260,
                                "column": 7
                              }
                            },
                            "name": "lines"
                          },
                          "value": {
                            "type": "ArrayExpression",
                            "start": 8968,
                            "end": 8970,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 9
                              },
                              "end": {
                                "line": 260,
                                "column": 11
                              }
                            },
                            "elements": []
                          },
                          "kind": "init"
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 8978,
                "end": 9002,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 1
                  },
                  "end": {
                    "line": 262,
                    "column": 25
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 8978,
                  "end": 9001,
                  "loc": {
                    "start": {
                      "line": 262,
                      "column": 1
                    },
                    "end": {
                      "line": 262,
                      "column": 24
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 8978,
                    "end": 8996,
                    "loc": {
                      "start": {
                        "line": 262,
                        "column": 1
                      },
                      "end": {
                        "line": 262,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 8978,
                      "end": 8992,
                      "loc": {
                        "start": {
                          "line": 262,
                          "column": 1
                        },
                        "end": {
                          "line": 262,
                          "column": 15
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 8978,
                        "end": 8982,
                        "loc": {
                          "start": {
                            "line": 262,
                            "column": 1
                          },
                          "end": {
                            "line": 262,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 8983,
                        "end": 8992,
                        "loc": {
                          "start": {
                            "line": 262,
                            "column": 6
                          },
                          "end": {
                            "line": 262,
                            "column": 15
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8993,
                      "end": 8996,
                      "loc": {
                        "start": {
                          "line": 262,
                          "column": 16
                        },
                        "end": {
                          "line": 262,
                          "column": 19
                        }
                      },
                      "name": "all"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ArrayExpression",
                    "start": 8999,
                    "end": 9001,
                    "loc": {
                      "start": {
                        "line": 262,
                        "column": 22
                      },
                      "end": {
                        "line": 262,
                        "column": 24
                      }
                    },
                    "elements": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 9005,
                "end": 9032,
                "loc": {
                  "start": {
                    "line": 263,
                    "column": 1
                  },
                  "end": {
                    "line": 263,
                    "column": 28
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 9005,
                  "end": 9031,
                  "loc": {
                    "start": {
                      "line": 263,
                      "column": 1
                    },
                    "end": {
                      "line": 263,
                      "column": 27
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 9005,
                    "end": 9026,
                    "loc": {
                      "start": {
                        "line": 263,
                        "column": 1
                      },
                      "end": {
                        "line": 263,
                        "column": 22
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 9005,
                      "end": 9019,
                      "loc": {
                        "start": {
                          "line": 263,
                          "column": 1
                        },
                        "end": {
                          "line": 263,
                          "column": 15
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 9005,
                        "end": 9009,
                        "loc": {
                          "start": {
                            "line": 263,
                            "column": 1
                          },
                          "end": {
                            "line": 263,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 9010,
                        "end": 9019,
                        "loc": {
                          "start": {
                            "line": 263,
                            "column": 6
                          },
                          "end": {
                            "line": 263,
                            "column": 15
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 9020,
                      "end": 9026,
                      "loc": {
                        "start": {
                          "line": 263,
                          "column": 16
                        },
                        "end": {
                          "line": 263,
                          "column": 22
                        }
                      },
                      "name": "meshes"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ArrayExpression",
                    "start": 9029,
                    "end": 9031,
                    "loc": {
                      "start": {
                        "line": 263,
                        "column": 25
                      },
                      "end": {
                        "line": 263,
                        "column": 27
                      }
                    },
                    "elements": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 9035,
                "end": 9061,
                "loc": {
                  "start": {
                    "line": 264,
                    "column": 1
                  },
                  "end": {
                    "line": 264,
                    "column": 27
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 9035,
                  "end": 9060,
                  "loc": {
                    "start": {
                      "line": 264,
                      "column": 1
                    },
                    "end": {
                      "line": 264,
                      "column": 26
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 9035,
                    "end": 9055,
                    "loc": {
                      "start": {
                        "line": 264,
                        "column": 1
                      },
                      "end": {
                        "line": 264,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 9035,
                      "end": 9049,
                      "loc": {
                        "start": {
                          "line": 264,
                          "column": 1
                        },
                        "end": {
                          "line": 264,
                          "column": 15
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 9035,
                        "end": 9039,
                        "loc": {
                          "start": {
                            "line": 264,
                            "column": 1
                          },
                          "end": {
                            "line": 264,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 9040,
                        "end": 9049,
                        "loc": {
                          "start": {
                            "line": 264,
                            "column": 6
                          },
                          "end": {
                            "line": 264,
                            "column": 15
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 9050,
                      "end": 9055,
                      "loc": {
                        "start": {
                          "line": 264,
                          "column": 16
                        },
                        "end": {
                          "line": 264,
                          "column": 21
                        }
                      },
                      "name": "lines"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ArrayExpression",
                    "start": 9058,
                    "end": 9060,
                    "loc": {
                      "start": {
                        "line": 264,
                        "column": 24
                      },
                      "end": {
                        "line": 264,
                        "column": 26
                      }
                    },
                    "elements": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 9069,
                "end": 9141,
                "loc": {
                  "start": {
                    "line": 266,
                    "column": 4
                  },
                  "end": {
                    "line": 266,
                    "column": 76
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 9069,
                  "end": 9140,
                  "loc": {
                    "start": {
                      "line": 266,
                      "column": 4
                    },
                    "end": {
                      "line": 266,
                      "column": 75
                    }
                  },
                  "callee": {
                    "type": "Identifier",
                    "start": 9069,
                    "end": 9077,
                    "loc": {
                      "start": {
                        "line": 266,
                        "column": 4
                      },
                      "end": {
                        "line": 266,
                        "column": 12
                      }
                    },
                    "name": "traverse"
                  },
                  "arguments": [
                    {
                      "type": "ThisExpression",
                      "start": 9078,
                      "end": 9082,
                      "loc": {
                        "start": {
                          "line": 266,
                          "column": 13
                        },
                        "end": {
                          "line": 266,
                          "column": 17
                        }
                      }
                    },
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 9084,
                      "end": 9139,
                      "loc": {
                        "start": {
                          "line": 266,
                          "column": 19
                        },
                        "end": {
                          "line": 266,
                          "column": 74
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": true,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 9084,
                          "end": 9089,
                          "loc": {
                            "start": {
                              "line": 266,
                              "column": 19
                            },
                            "end": {
                              "line": 266,
                              "column": 24
                            }
                          },
                          "name": "child"
                        }
                      ],
                      "body": {
                        "type": "AssignmentExpression",
                        "start": 9093,
                        "end": 9139,
                        "loc": {
                          "start": {
                            "line": 266,
                            "column": 28
                          },
                          "end": {
                            "line": 266,
                            "column": 74
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 9093,
                          "end": 9122,
                          "loc": {
                            "start": {
                              "line": 266,
                              "column": 28
                            },
                            "end": {
                              "line": 266,
                              "column": 57
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9093,
                            "end": 9101,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 28
                              },
                              "end": {
                                "line": 266,
                                "column": 36
                              }
                            },
                            "name": "colorMap"
                          },
                          "property": {
                            "type": "MemberExpression",
                            "start": 9102,
                            "end": 9121,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 37
                              },
                              "end": {
                                "line": 266,
                                "column": 56
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9102,
                              "end": 9116,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 37
                                },
                                "end": {
                                  "line": 266,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 9102,
                                "end": 9107,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 42
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9108,
                                "end": 9116,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 51
                                  }
                                },
                                "name": "material"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9117,
                              "end": 9121,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 52
                                },
                                "end": {
                                  "line": 266,
                                  "column": 56
                                }
                              },
                              "name": "uuid"
                            },
                            "computed": false
                          },
                          "computed": true
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 9125,
                          "end": 9139,
                          "loc": {
                            "start": {
                              "line": 266,
                              "column": 60
                            },
                            "end": {
                              "line": 266,
                              "column": 74
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9125,
                            "end": 9130,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 60
                              },
                              "end": {
                                "line": 266,
                                "column": 65
                              }
                            },
                            "name": "child"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9131,
                            "end": 9139,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 66
                              },
                              "end": {
                                "line": 266,
                                "column": 74
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        }
                      }
                    }
                  ]
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 9144,
                "end": 9433,
                "loc": {
                  "start": {
                    "line": 267,
                    "column": 1
                  },
                  "end": {
                    "line": 274,
                    "column": 4
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 9144,
                  "end": 9432,
                  "loc": {
                    "start": {
                      "line": 267,
                      "column": 1
                    },
                    "end": {
                      "line": 274,
                      "column": 3
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 9144,
                    "end": 9173,
                    "loc": {
                      "start": {
                        "line": 267,
                        "column": 1
                      },
                      "end": {
                        "line": 267,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 9144,
                      "end": 9165,
                      "loc": {
                        "start": {
                          "line": 267,
                          "column": 1
                        },
                        "end": {
                          "line": 267,
                          "column": 22
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 9144,
                        "end": 9155,
                        "loc": {
                          "start": {
                            "line": 267,
                            "column": 1
                          },
                          "end": {
                            "line": 267,
                            "column": 12
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 9144,
                          "end": 9150,
                          "loc": {
                            "start": {
                              "line": 267,
                              "column": 1
                            },
                            "end": {
                              "line": 267,
                              "column": 7
                            }
                          },
                          "name": "Object"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9151,
                          "end": 9155,
                          "loc": {
                            "start": {
                              "line": 267,
                              "column": 8
                            },
                            "end": {
                              "line": 267,
                              "column": 12
                            }
                          },
                          "name": "keys"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 9156,
                          "end": 9164,
                          "loc": {
                            "start": {
                              "line": 267,
                              "column": 13
                            },
                            "end": {
                              "line": 267,
                              "column": 21
                            }
                          },
                          "name": "colorMap"
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 9166,
                      "end": 9173,
                      "loc": {
                        "start": {
                          "line": 267,
                          "column": 23
                        },
                        "end": {
                          "line": 267,
                          "column": 30
                        }
                      },
                      "name": "forEach"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 9174,
                      "end": 9431,
                      "loc": {
                        "start": {
                          "line": 267,
                          "column": 31
                        },
                        "end": {
                          "line": 274,
                          "column": 2
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 9174,
                          "end": 9177,
                          "loc": {
                            "start": {
                              "line": 267,
                              "column": 31
                            },
                            "end": {
                              "line": 267,
                              "column": 34
                            }
                          },
                          "name": "key"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 9181,
                        "end": 9431,
                        "loc": {
                          "start": {
                            "line": 267,
                            "column": 38
                          },
                          "end": {
                            "line": 274,
                            "column": 2
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 9186,
                            "end": 9215,
                            "loc": {
                              "start": {
                                "line": 268,
                                "column": 2
                              },
                              "end": {
                                "line": 268,
                                "column": 31
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 9190,
                                "end": 9214,
                                "loc": {
                                  "start": {
                                    "line": 268,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 268,
                                    "column": 30
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 9190,
                                  "end": 9198,
                                  "loc": {
                                    "start": {
                                      "line": 268,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 268,
                                      "column": 14
                                    }
                                  },
                                  "name": "material"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 9201,
                                  "end": 9214,
                                  "loc": {
                                    "start": {
                                      "line": 268,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 268,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9201,
                                    "end": 9209,
                                    "loc": {
                                      "start": {
                                        "line": 268,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 268,
                                        "column": 25
                                      }
                                    },
                                    "name": "colorMap"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9210,
                                    "end": 9213,
                                    "loc": {
                                      "start": {
                                        "line": 268,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 268,
                                        "column": 29
                                      }
                                    },
                                    "name": "key"
                                  },
                                  "computed": true
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 9219,
                            "end": 9253,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 2
                              },
                              "end": {
                                "line": 269,
                                "column": 36
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 9219,
                              "end": 9252,
                              "loc": {
                                "start": {
                                  "line": 269,
                                  "column": 2
                                },
                                "end": {
                                  "line": 269,
                                  "column": 35
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9219,
                                "end": 9242,
                                "loc": {
                                  "start": {
                                    "line": 269,
                                    "column": 2
                                  },
                                  "end": {
                                    "line": 269,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9219,
                                  "end": 9237,
                                  "loc": {
                                    "start": {
                                      "line": 269,
                                      "column": 2
                                    },
                                    "end": {
                                      "line": 269,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9219,
                                    "end": 9233,
                                    "loc": {
                                      "start": {
                                        "line": 269,
                                        "column": 2
                                      },
                                      "end": {
                                        "line": 269,
                                        "column": 16
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 9219,
                                      "end": 9223,
                                      "loc": {
                                        "start": {
                                          "line": 269,
                                          "column": 2
                                        },
                                        "end": {
                                          "line": 269,
                                          "column": 6
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9224,
                                      "end": 9233,
                                      "loc": {
                                        "start": {
                                          "line": 269,
                                          "column": 7
                                        },
                                        "end": {
                                          "line": 269,
                                          "column": 16
                                        }
                                      },
                                      "name": "materials"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9234,
                                    "end": 9237,
                                    "loc": {
                                      "start": {
                                        "line": 269,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 269,
                                        "column": 20
                                      }
                                    },
                                    "name": "all"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9238,
                                  "end": 9242,
                                  "loc": {
                                    "start": {
                                      "line": 269,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 269,
                                      "column": 25
                                    }
                                  },
                                  "name": "push"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9243,
                                  "end": 9251,
                                  "loc": {
                                    "start": {
                                      "line": 269,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 269,
                                      "column": 34
                                    }
                                  },
                                  "name": "material"
                                }
                              ]
                            }
                          },
                          {
                            "type": "IfStatement",
                            "start": 9257,
                            "end": 9427,
                            "loc": {
                              "start": {
                                "line": 270,
                                "column": 2
                              },
                              "end": {
                                "line": 273,
                                "column": 39
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 9261,
                              "end": 9295,
                              "loc": {
                                "start": {
                                  "line": 270,
                                  "column": 6
                                },
                                "end": {
                                  "line": 270,
                                  "column": 40
                                }
                              },
                              "left": {
                                "type": "CallExpression",
                                "start": 9261,
                                "end": 9290,
                                "loc": {
                                  "start": {
                                    "line": 270,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 270,
                                    "column": 35
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9261,
                                  "end": 9282,
                                  "loc": {
                                    "start": {
                                      "line": 270,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 270,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9261,
                                    "end": 9274,
                                    "loc": {
                                      "start": {
                                        "line": 270,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 270,
                                        "column": 19
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9261,
                                      "end": 9269,
                                      "loc": {
                                        "start": {
                                          "line": 270,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 270,
                                          "column": 14
                                        }
                                      },
                                      "name": "material"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9270,
                                      "end": 9274,
                                      "loc": {
                                        "start": {
                                          "line": 270,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 270,
                                          "column": 19
                                        }
                                      },
                                      "name": "type"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9275,
                                    "end": 9282,
                                    "loc": {
                                      "start": {
                                        "line": 270,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 270,
                                        "column": 27
                                      }
                                    },
                                    "name": "indexOf"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 9283,
                                    "end": 9289,
                                    "loc": {
                                      "start": {
                                        "line": 270,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 270,
                                        "column": 34
                                      }
                                    },
                                    "value": "Mesh",
                                    "rawValue": "Mesh",
                                    "raw": "'Mesh'"
                                  }
                                ]
                              },
                              "operator": ">",
                              "right": {
                                "type": "UnaryExpression",
                                "start": 9293,
                                "end": 9295,
                                "loc": {
                                  "start": {
                                    "line": 270,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 270,
                                    "column": 40
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 9294,
                                  "end": 9295,
                                  "loc": {
                                    "start": {
                                      "line": 270,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 270,
                                      "column": 40
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              }
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 9301,
                              "end": 9338,
                              "loc": {
                                "start": {
                                  "line": 271,
                                  "column": 3
                                },
                                "end": {
                                  "line": 271,
                                  "column": 40
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 9301,
                                "end": 9337,
                                "loc": {
                                  "start": {
                                    "line": 271,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 271,
                                    "column": 39
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9301,
                                  "end": 9327,
                                  "loc": {
                                    "start": {
                                      "line": 271,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 271,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9301,
                                    "end": 9322,
                                    "loc": {
                                      "start": {
                                        "line": 271,
                                        "column": 3
                                      },
                                      "end": {
                                        "line": 271,
                                        "column": 24
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 9301,
                                      "end": 9315,
                                      "loc": {
                                        "start": {
                                          "line": 271,
                                          "column": 3
                                        },
                                        "end": {
                                          "line": 271,
                                          "column": 17
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 9301,
                                        "end": 9305,
                                        "loc": {
                                          "start": {
                                            "line": 271,
                                            "column": 3
                                          },
                                          "end": {
                                            "line": 271,
                                            "column": 7
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9306,
                                        "end": 9315,
                                        "loc": {
                                          "start": {
                                            "line": 271,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 271,
                                            "column": 17
                                          }
                                        },
                                        "name": "materials"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9316,
                                      "end": 9322,
                                      "loc": {
                                        "start": {
                                          "line": 271,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 271,
                                          "column": 24
                                        }
                                      },
                                      "name": "meshes"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9323,
                                    "end": 9327,
                                    "loc": {
                                      "start": {
                                        "line": 271,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 271,
                                        "column": 29
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 9328,
                                    "end": 9336,
                                    "loc": {
                                      "start": {
                                        "line": 271,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 271,
                                        "column": 38
                                      }
                                    },
                                    "name": "material"
                                  }
                                ]
                              }
                            },
                            "alternate": {
                              "type": "IfStatement",
                              "start": 9347,
                              "end": 9427,
                              "loc": {
                                "start": {
                                  "line": 272,
                                  "column": 7
                                },
                                "end": {
                                  "line": 273,
                                  "column": 39
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 9351,
                                "end": 9385,
                                "loc": {
                                  "start": {
                                    "line": 272,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 272,
                                    "column": 45
                                  }
                                },
                                "left": {
                                  "type": "CallExpression",
                                  "start": 9351,
                                  "end": 9380,
                                  "loc": {
                                    "start": {
                                      "line": 272,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 272,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 9351,
                                    "end": 9372,
                                    "loc": {
                                      "start": {
                                        "line": 272,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 272,
                                        "column": 32
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 9351,
                                      "end": 9364,
                                      "loc": {
                                        "start": {
                                          "line": 272,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 272,
                                          "column": 24
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 9351,
                                        "end": 9359,
                                        "loc": {
                                          "start": {
                                            "line": 272,
                                            "column": 11
                                          },
                                          "end": {
                                            "line": 272,
                                            "column": 19
                                          }
                                        },
                                        "name": "material"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9360,
                                        "end": 9364,
                                        "loc": {
                                          "start": {
                                            "line": 272,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 272,
                                            "column": 24
                                          }
                                        },
                                        "name": "type"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9365,
                                      "end": 9372,
                                      "loc": {
                                        "start": {
                                          "line": 272,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 272,
                                          "column": 32
                                        }
                                      },
                                      "name": "indexOf"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Literal",
                                      "start": 9373,
                                      "end": 9379,
                                      "loc": {
                                        "start": {
                                          "line": 272,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 272,
                                          "column": 39
                                        }
                                      },
                                      "value": "Line",
                                      "rawValue": "Line",
                                      "raw": "'Line'"
                                    }
                                  ]
                                },
                                "operator": ">",
                                "right": {
                                  "type": "UnaryExpression",
                                  "start": 9383,
                                  "end": 9385,
                                  "loc": {
                                    "start": {
                                      "line": 272,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 272,
                                      "column": 45
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Literal",
                                    "start": 9384,
                                    "end": 9385,
                                    "loc": {
                                      "start": {
                                        "line": 272,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 272,
                                        "column": 45
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              },
                              "consequent": {
                                "type": "ExpressionStatement",
                                "start": 9391,
                                "end": 9427,
                                "loc": {
                                  "start": {
                                    "line": 273,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 273,
                                    "column": 39
                                  }
                                },
                                "expression": {
                                  "type": "CallExpression",
                                  "start": 9391,
                                  "end": 9426,
                                  "loc": {
                                    "start": {
                                      "line": 273,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 273,
                                      "column": 38
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 9391,
                                    "end": 9416,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 3
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 9391,
                                      "end": 9411,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 3
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 23
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 9391,
                                        "end": 9405,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 3
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 17
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 9391,
                                          "end": 9395,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 3
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 7
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9396,
                                          "end": 9405,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 17
                                            }
                                          },
                                          "name": "materials"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9406,
                                        "end": 9411,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 23
                                          }
                                        },
                                        "name": "lines"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9412,
                                      "end": 9416,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 28
                                        }
                                      },
                                      "name": "push"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 9417,
                                      "end": 9425,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 37
                                        }
                                      },
                                      "name": "material"
                                    }
                                  ]
                                }
                              },
                              "alternate": null
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 9438,
                "end": 9450,
                "loc": {
                  "start": {
                    "line": 276,
                    "column": 1
                  },
                  "end": {
                    "line": 276,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 9445,
                  "end": 9449,
                  "loc": {
                    "start": {
                      "line": 276,
                      "column": 8
                    },
                    "end": {
                      "line": 276,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 9457,
      "end": 10168,
      "loc": {
        "start": {
          "line": 279,
          "column": 0
        },
        "end": {
          "line": 307,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 9457,
        "end": 10168,
        "loc": {
          "start": {
            "line": 279,
            "column": 0
          },
          "end": {
            "line": 307,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 9457,
          "end": 9490,
          "loc": {
            "start": {
              "line": 279,
              "column": 0
            },
            "end": {
              "line": 279,
              "column": 33
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 9457,
            "end": 9481,
            "loc": {
              "start": {
                "line": 279,
                "column": 0
              },
              "end": {
                "line": 279,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 9457,
              "end": 9471,
              "loc": {
                "start": {
                  "line": 279,
                  "column": 0
                },
                "end": {
                  "line": 279,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 9457,
                "end": 9462,
                "loc": {
                  "start": {
                    "line": 279,
                    "column": 0
                  },
                  "end": {
                    "line": 279,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 9463,
                "end": 9471,
                "loc": {
                  "start": {
                    "line": 279,
                    "column": 6
                  },
                  "end": {
                    "line": 279,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 9472,
              "end": 9481,
              "loc": {
                "start": {
                  "line": 279,
                  "column": 15
                },
                "end": {
                  "line": 279,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 9482,
            "end": 9490,
            "loc": {
              "start": {
                "line": 279,
                "column": 25
              },
              "end": {
                "line": 279,
                "column": 33
              }
            },
            "name": "compress"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 9493,
          "end": 10168,
          "loc": {
            "start": {
              "line": 279,
              "column": 36
            },
            "end": {
              "line": 307,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 9482,
            "end": 9490,
            "loc": {
              "start": {
                "line": 279,
                "column": 25
              },
              "end": {
                "line": 279,
                "column": 33
              }
            },
            "name": "compress"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 9504,
            "end": 10168,
            "loc": {
              "start": {
                "line": 279,
                "column": 47
              },
              "end": {
                "line": 307,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 9508,
                "end": 9536,
                "loc": {
                  "start": {
                    "line": 280,
                    "column": 1
                  },
                  "end": {
                    "line": 280,
                    "column": 29
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 9512,
                  "end": 9527,
                  "loc": {
                    "start": {
                      "line": 280,
                      "column": 5
                    },
                    "end": {
                      "line": 280,
                      "column": 20
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "MemberExpression",
                    "start": 9513,
                    "end": 9527,
                    "loc": {
                      "start": {
                        "line": 280,
                        "column": 6
                      },
                      "end": {
                        "line": 280,
                        "column": 20
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 9513,
                      "end": 9517,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 6
                        },
                        "end": {
                          "line": 280,
                          "column": 10
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 9518,
                      "end": 9527,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 11
                        },
                        "end": {
                          "line": 280,
                          "column": 20
                        }
                      },
                      "name": "materials"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 9529,
                  "end": 9536,
                  "loc": {
                    "start": {
                      "line": 280,
                      "column": 22
                    },
                    "end": {
                      "line": 280,
                      "column": 29
                    }
                  },
                  "argument": null
                },
                "alternate": null
              },
              {
                "type": "VariableDeclaration",
                "start": 9541,
                "end": 9602,
                "loc": {
                  "start": {
                    "line": 282,
                    "column": 1
                  },
                  "end": {
                    "line": 283,
                    "column": 16
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 9545,
                    "end": 9583,
                    "loc": {
                      "start": {
                        "line": 282,
                        "column": 5
                      },
                      "end": {
                        "line": 282,
                        "column": 43
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 9545,
                      "end": 9549,
                      "loc": {
                        "start": {
                          "line": 282,
                          "column": 5
                        },
                        "end": {
                          "line": 282,
                          "column": 9
                        }
                      },
                      "name": "keys"
                    },
                    "init": {
                      "type": "CallExpression",
                      "start": 9552,
                      "end": 9583,
                      "loc": {
                        "start": {
                          "line": 282,
                          "column": 12
                        },
                        "end": {
                          "line": 282,
                          "column": 43
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 9552,
                        "end": 9563,
                        "loc": {
                          "start": {
                            "line": 282,
                            "column": 12
                          },
                          "end": {
                            "line": 282,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 9552,
                          "end": 9558,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 12
                            },
                            "end": {
                              "line": 282,
                              "column": 18
                            }
                          },
                          "name": "Object"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9559,
                          "end": 9563,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 19
                            },
                            "end": {
                              "line": 282,
                              "column": 23
                            }
                          },
                          "name": "keys"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "start": 9564,
                          "end": 9582,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 24
                            },
                            "end": {
                              "line": 282,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9564,
                            "end": 9578,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 24
                              },
                              "end": {
                                "line": 282,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9564,
                              "end": 9568,
                              "loc": {
                                "start": {
                                  "line": 282,
                                  "column": 24
                                },
                                "end": {
                                  "line": 282,
                                  "column": 28
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9569,
                              "end": 9578,
                              "loc": {
                                "start": {
                                  "line": 282,
                                  "column": 29
                                },
                                "end": {
                                  "line": 282,
                                  "column": 38
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9579,
                            "end": 9582,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 39
                              },
                              "end": {
                                "line": 282,
                                "column": 42
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        }
                      ]
                    }
                  },
                  {
                    "type": "VariableDeclarator",
                    "start": 9588,
                    "end": 9601,
                    "loc": {
                      "start": {
                        "line": 283,
                        "column": 2
                      },
                      "end": {
                        "line": 283,
                        "column": 15
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 9588,
                      "end": 9596,
                      "loc": {
                        "start": {
                          "line": 283,
                          "column": 2
                        },
                        "end": {
                          "line": 283,
                          "column": 10
                        }
                      },
                      "name": "colorMap"
                    },
                    "init": {
                      "type": "ObjectExpression",
                      "start": 9599,
                      "end": 9601,
                      "loc": {
                        "start": {
                          "line": 283,
                          "column": 13
                        },
                        "end": {
                          "line": 283,
                          "column": 15
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "kind": "var",
                "trailingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Compress materials",
                    "start": 9607,
                    "end": 9628,
                    "loc": {
                      "start": {
                        "line": 285,
                        "column": 1
                      },
                      "end": {
                        "line": 285,
                        "column": 22
                      }
                    },
                    "range": [
                      9607,
                      9628
                    ]
                  }
                ]
              },
              {
                "type": "ForStatement",
                "start": 9631,
                "end": 10122,
                "loc": {
                  "start": {
                    "line": 286,
                    "column": 1
                  },
                  "end": {
                    "line": 303,
                    "column": 2
                  }
                },
                "init": {
                  "type": "VariableDeclaration",
                  "start": 9636,
                  "end": 9676,
                  "loc": {
                    "start": {
                      "line": 286,
                      "column": 6
                    },
                    "end": {
                      "line": 286,
                      "column": 46
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 9640,
                      "end": 9645,
                      "loc": {
                        "start": {
                          "line": 286,
                          "column": 10
                        },
                        "end": {
                          "line": 286,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 9640,
                        "end": 9641,
                        "loc": {
                          "start": {
                            "line": 286,
                            "column": 10
                          },
                          "end": {
                            "line": 286,
                            "column": 11
                          }
                        },
                        "name": "i",
                        "leadingComments": null
                      },
                      "init": {
                        "type": "Literal",
                        "start": 9644,
                        "end": 9645,
                        "loc": {
                          "start": {
                            "line": 286,
                            "column": 14
                          },
                          "end": {
                            "line": 286,
                            "column": 15
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      "leadingComments": null
                    },
                    {
                      "type": "VariableDeclarator",
                      "start": 9647,
                      "end": 9676,
                      "loc": {
                        "start": {
                          "line": 286,
                          "column": 17
                        },
                        "end": {
                          "line": 286,
                          "column": 46
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 9647,
                        "end": 9648,
                        "loc": {
                          "start": {
                            "line": 286,
                            "column": 17
                          },
                          "end": {
                            "line": 286,
                            "column": 18
                          }
                        },
                        "name": "l"
                      },
                      "init": {
                        "type": "MemberExpression",
                        "start": 9651,
                        "end": 9676,
                        "loc": {
                          "start": {
                            "line": 286,
                            "column": 21
                          },
                          "end": {
                            "line": 286,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 9651,
                          "end": 9669,
                          "loc": {
                            "start": {
                              "line": 286,
                              "column": 21
                            },
                            "end": {
                              "line": 286,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9651,
                            "end": 9665,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 21
                              },
                              "end": {
                                "line": 286,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9651,
                              "end": 9655,
                              "loc": {
                                "start": {
                                  "line": 286,
                                  "column": 21
                                },
                                "end": {
                                  "line": 286,
                                  "column": 25
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9656,
                              "end": 9665,
                              "loc": {
                                "start": {
                                  "line": 286,
                                  "column": 26
                                },
                                "end": {
                                  "line": 286,
                                  "column": 35
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9666,
                            "end": 9669,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 36
                              },
                              "end": {
                                "line": 286,
                                "column": 39
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9670,
                          "end": 9676,
                          "loc": {
                            "start": {
                              "line": 286,
                              "column": 40
                            },
                            "end": {
                              "line": 286,
                              "column": 46
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "kind": "var",
                  "leadingComments": null
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 9678,
                  "end": 9683,
                  "loc": {
                    "start": {
                      "line": 286,
                      "column": 48
                    },
                    "end": {
                      "line": 286,
                      "column": 53
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 9678,
                    "end": 9679,
                    "loc": {
                      "start": {
                        "line": 286,
                        "column": 48
                      },
                      "end": {
                        "line": 286,
                        "column": 49
                      }
                    },
                    "name": "i"
                  },
                  "operator": "<",
                  "right": {
                    "type": "Identifier",
                    "start": 9682,
                    "end": 9683,
                    "loc": {
                      "start": {
                        "line": 286,
                        "column": 52
                      },
                      "end": {
                        "line": 286,
                        "column": 53
                      }
                    },
                    "name": "l"
                  }
                },
                "update": {
                  "type": "UpdateExpression",
                  "start": 9685,
                  "end": 9688,
                  "loc": {
                    "start": {
                      "line": 286,
                      "column": 55
                    },
                    "end": {
                      "line": 286,
                      "column": 58
                    }
                  },
                  "operator": "++",
                  "prefix": false,
                  "argument": {
                    "type": "Identifier",
                    "start": 9685,
                    "end": 9686,
                    "loc": {
                      "start": {
                        "line": 286,
                        "column": 55
                      },
                      "end": {
                        "line": 286,
                        "column": 56
                      }
                    },
                    "name": "i"
                  }
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 9690,
                  "end": 10122,
                  "loc": {
                    "start": {
                      "line": 286,
                      "column": 60
                    },
                    "end": {
                      "line": 303,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 9695,
                      "end": 9829,
                      "loc": {
                        "start": {
                          "line": 287,
                          "column": 2
                        },
                        "end": {
                          "line": 288,
                          "column": 95
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9699,
                          "end": 9731,
                          "loc": {
                            "start": {
                              "line": 287,
                              "column": 6
                            },
                            "end": {
                              "line": 287,
                              "column": 38
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9699,
                            "end": 9707,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 6
                              },
                              "end": {
                                "line": 287,
                                "column": 14
                              }
                            },
                            "name": "material"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 9710,
                            "end": 9731,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 17
                              },
                              "end": {
                                "line": 287,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9710,
                              "end": 9728,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 17
                                },
                                "end": {
                                  "line": 287,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9710,
                                "end": 9724,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 9710,
                                  "end": 9714,
                                  "loc": {
                                    "start": {
                                      "line": 287,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 287,
                                      "column": 21
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9715,
                                  "end": 9724,
                                  "loc": {
                                    "start": {
                                      "line": 287,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 287,
                                      "column": 31
                                    }
                                  },
                                  "name": "materials"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9725,
                                "end": 9728,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 35
                                  }
                                },
                                "name": "all"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9729,
                              "end": 9730,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 36
                                },
                                "end": {
                                  "line": 287,
                                  "column": 37
                                }
                              },
                              "name": "i"
                            },
                            "computed": true
                          }
                        },
                        {
                          "type": "VariableDeclarator",
                          "start": 9737,
                          "end": 9828,
                          "loc": {
                            "start": {
                              "line": 288,
                              "column": 3
                            },
                            "end": {
                              "line": 288,
                              "column": 94
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9737,
                            "end": 9742,
                            "loc": {
                              "start": {
                                "line": 288,
                                "column": 3
                              },
                              "end": {
                                "line": 288,
                                "column": 8
                              }
                            },
                            "name": "index"
                          },
                          "init": {
                            "type": "TemplateLiteral",
                            "start": 9745,
                            "end": 9828,
                            "loc": {
                              "start": {
                                "line": 288,
                                "column": 11
                              },
                              "end": {
                                "line": 288,
                                "column": 94
                              }
                            },
                            "expressions": [
                              {
                                "type": "CallExpression",
                                "start": 9749,
                                "end": 9778,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 44
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9749,
                                  "end": 9776,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9749,
                                    "end": 9763,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9749,
                                      "end": 9757,
                                      "loc": {
                                        "start": {
                                          "line": 288,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 288,
                                          "column": 23
                                        }
                                      },
                                      "name": "material"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9758,
                                      "end": 9763,
                                      "loc": {
                                        "start": {
                                          "line": 288,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 288,
                                          "column": 29
                                        }
                                      },
                                      "name": "color"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9764,
                                    "end": 9776,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 42
                                      }
                                    },
                                    "name": "getHexString"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              {
                                "type": "CallExpression",
                                "start": 9782,
                                "end": 9809,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 75
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9782,
                                  "end": 9806,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 72
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9782,
                                    "end": 9798,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 64
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9782,
                                      "end": 9790,
                                      "loc": {
                                        "start": {
                                          "line": 288,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 288,
                                          "column": 56
                                        }
                                      },
                                      "name": "material"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9791,
                                      "end": 9798,
                                      "loc": {
                                        "start": {
                                          "line": 288,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 288,
                                          "column": 64
                                        }
                                      },
                                      "name": "opacity"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9799,
                                    "end": 9806,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 72
                                      }
                                    },
                                    "name": "toFixed"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 9807,
                                    "end": 9808,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 73
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 74
                                      }
                                    },
                                    "value": 2,
                                    "rawValue": 2,
                                    "raw": "2"
                                  }
                                ]
                              },
                              {
                                "type": "MemberExpression",
                                "start": 9813,
                                "end": 9826,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 92
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9813,
                                  "end": 9821,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 87
                                    }
                                  },
                                  "name": "material"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9822,
                                  "end": 9826,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 88
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 92
                                    }
                                  },
                                  "name": "type"
                                },
                                "computed": false
                              }
                            ],
                            "quasis": [
                              {
                                "type": "TemplateElement",
                                "start": 9746,
                                "end": 9747,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 13
                                  }
                                },
                                "value": {
                                  "raw": "#",
                                  "cooked": "#"
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9779,
                                "end": 9780,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 46
                                  }
                                },
                                "value": {
                                  "raw": "_",
                                  "cooked": "_"
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9810,
                                "end": 9811,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 76
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 77
                                  }
                                },
                                "value": {
                                  "raw": "_",
                                  "cooked": "_"
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9827,
                                "end": 9827,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 93
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 93
                                  }
                                },
                                "value": {
                                  "raw": "",
                                  "cooked": ""
                                },
                                "tail": true
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9835,
                      "end": 9863,
                      "loc": {
                        "start": {
                          "line": 290,
                          "column": 2
                        },
                        "end": {
                          "line": 290,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9839,
                          "end": 9862,
                          "loc": {
                            "start": {
                              "line": 290,
                              "column": 6
                            },
                            "end": {
                              "line": 290,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9839,
                            "end": 9844,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 6
                              },
                              "end": {
                                "line": 290,
                                "column": 11
                              }
                            },
                            "name": "entry"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 9847,
                            "end": 9862,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 14
                              },
                              "end": {
                                "line": 290,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 9847,
                              "end": 9855,
                              "loc": {
                                "start": {
                                  "line": 290,
                                  "column": 14
                                },
                                "end": {
                                  "line": 290,
                                  "column": 22
                                }
                              },
                              "name": "colorMap"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9856,
                              "end": 9861,
                              "loc": {
                                "start": {
                                  "line": 290,
                                  "column": 23
                                },
                                "end": {
                                  "line": 290,
                                  "column": 28
                                }
                              },
                              "name": "index"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 9869,
                      "end": 10118,
                      "loc": {
                        "start": {
                          "line": 292,
                          "column": 2
                        },
                        "end": {
                          "line": 302,
                          "column": 3
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 9873,
                        "end": 9879,
                        "loc": {
                          "start": {
                            "line": 292,
                            "column": 6
                          },
                          "end": {
                            "line": 292,
                            "column": 12
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 9874,
                          "end": 9879,
                          "loc": {
                            "start": {
                              "line": 292,
                              "column": 7
                            },
                            "end": {
                              "line": 292,
                              "column": 12
                            }
                          },
                          "name": "entry"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9885,
                        "end": 9912,
                        "loc": {
                          "start": {
                            "line": 293,
                            "column": 3
                          },
                          "end": {
                            "line": 293,
                            "column": 30
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 9885,
                          "end": 9911,
                          "loc": {
                            "start": {
                              "line": 293,
                              "column": 3
                            },
                            "end": {
                              "line": 293,
                              "column": 29
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 9885,
                            "end": 9900,
                            "loc": {
                              "start": {
                                "line": 293,
                                "column": 3
                              },
                              "end": {
                                "line": 293,
                                "column": 18
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 9885,
                              "end": 9893,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 3
                                },
                                "end": {
                                  "line": 293,
                                  "column": 11
                                }
                              },
                              "name": "colorMap"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9894,
                              "end": 9899,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 12
                                },
                                "end": {
                                  "line": 293,
                                  "column": 17
                                }
                              },
                              "name": "index"
                            },
                            "computed": true
                          },
                          "right": {
                            "type": "Identifier",
                            "start": 9903,
                            "end": 9911,
                            "loc": {
                              "start": {
                                "line": 293,
                                "column": 21
                              },
                              "end": {
                                "line": 293,
                                "column": 29
                              }
                            },
                            "name": "material"
                          }
                        }
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 9921,
                        "end": 10118,
                        "loc": {
                          "start": {
                            "line": 294,
                            "column": 7
                          },
                          "end": {
                            "line": 302,
                            "column": 3
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 9965,
                            "end": 10113,
                            "loc": {
                              "start": {
                                "line": 296,
                                "column": 3
                              },
                              "end": {
                                "line": 301,
                                "column": 6
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 9965,
                              "end": 10112,
                              "loc": {
                                "start": {
                                  "line": 296,
                                  "column": 3
                                },
                                "end": {
                                  "line": 301,
                                  "column": 5
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9965,
                                "end": 9978,
                                "loc": {
                                  "start": {
                                    "line": 296,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 296,
                                    "column": 16
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 9965,
                                  "end": 9969,
                                  "loc": {
                                    "start": {
                                      "line": 296,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 296,
                                      "column": 7
                                    }
                                  },
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9970,
                                  "end": 9978,
                                  "loc": {
                                    "start": {
                                      "line": 296,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 296,
                                      "column": 16
                                    }
                                  },
                                  "name": "traverse"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "FunctionExpression",
                                  "start": 9979,
                                  "end": 10111,
                                  "loc": {
                                    "start": {
                                      "line": 296,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 301,
                                      "column": 4
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 9988,
                                      "end": 9993,
                                      "loc": {
                                        "start": {
                                          "line": 296,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 296,
                                          "column": 31
                                        }
                                      },
                                      "name": "child"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 9995,
                                    "end": 10111,
                                    "loc": {
                                      "start": {
                                        "line": 296,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 301,
                                        "column": 4
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 10002,
                                        "end": 10105,
                                        "loc": {
                                          "start": {
                                            "line": 297,
                                            "column": 4
                                          },
                                          "end": {
                                            "line": 300,
                                            "column": 5
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 10006,
                                          "end": 10033,
                                          "loc": {
                                            "start": {
                                              "line": 297,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 297,
                                              "column": 35
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 10006,
                                            "end": 10020,
                                            "loc": {
                                              "start": {
                                                "line": 297,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 297,
                                                "column": 22
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 10006,
                                              "end": 10011,
                                              "loc": {
                                                "start": {
                                                  "line": 297,
                                                  "column": 8
                                                },
                                                "end": {
                                                  "line": 297,
                                                  "column": 13
                                                }
                                              },
                                              "name": "child"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 10012,
                                              "end": 10020,
                                              "loc": {
                                                "start": {
                                                  "line": 297,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 297,
                                                  "column": 22
                                                }
                                              },
                                              "name": "material"
                                            },
                                            "computed": false
                                          },
                                          "operator": "===",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 10025,
                                            "end": 10033,
                                            "loc": {
                                              "start": {
                                                "line": 297,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 297,
                                                "column": 35
                                              }
                                            },
                                            "name": "material"
                                          }
                                        },
                                        "consequent": {
                                          "type": "BlockStatement",
                                          "start": 10035,
                                          "end": 10105,
                                          "loc": {
                                            "start": {
                                              "line": 297,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 300,
                                              "column": 5
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 10043,
                                              "end": 10068,
                                              "loc": {
                                                "start": {
                                                  "line": 298,
                                                  "column": 5
                                                },
                                                "end": {
                                                  "line": 298,
                                                  "column": 30
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 10043,
                                                "end": 10067,
                                                "loc": {
                                                  "start": {
                                                    "line": 298,
                                                    "column": 5
                                                  },
                                                  "end": {
                                                    "line": 298,
                                                    "column": 29
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 10043,
                                                  "end": 10065,
                                                  "loc": {
                                                    "start": {
                                                      "line": 298,
                                                      "column": 5
                                                    },
                                                    "end": {
                                                      "line": 298,
                                                      "column": 27
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 10043,
                                                    "end": 10057,
                                                    "loc": {
                                                      "start": {
                                                        "line": 298,
                                                        "column": 5
                                                      },
                                                      "end": {
                                                        "line": 298,
                                                        "column": 19
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 10043,
                                                      "end": 10048,
                                                      "loc": {
                                                        "start": {
                                                          "line": 298,
                                                          "column": 5
                                                        },
                                                        "end": {
                                                          "line": 298,
                                                          "column": 10
                                                        }
                                                      },
                                                      "name": "child"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 10049,
                                                      "end": 10057,
                                                      "loc": {
                                                        "start": {
                                                          "line": 298,
                                                          "column": 11
                                                        },
                                                        "end": {
                                                          "line": 298,
                                                          "column": 19
                                                        }
                                                      },
                                                      "name": "material"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 10058,
                                                    "end": 10065,
                                                    "loc": {
                                                      "start": {
                                                        "line": 298,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 298,
                                                        "column": 27
                                                      }
                                                    },
                                                    "name": "dispose"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": []
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 10075,
                                              "end": 10098,
                                              "loc": {
                                                "start": {
                                                  "line": 299,
                                                  "column": 5
                                                },
                                                "end": {
                                                  "line": 299,
                                                  "column": 28
                                                }
                                              },
                                              "expression": {
                                                "type": "AssignmentExpression",
                                                "start": 10075,
                                                "end": 10097,
                                                "loc": {
                                                  "start": {
                                                    "line": 299,
                                                    "column": 5
                                                  },
                                                  "end": {
                                                    "line": 299,
                                                    "column": 27
                                                  }
                                                },
                                                "operator": "=",
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 10075,
                                                  "end": 10089,
                                                  "loc": {
                                                    "start": {
                                                      "line": 299,
                                                      "column": 5
                                                    },
                                                    "end": {
                                                      "line": 299,
                                                      "column": 19
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 10075,
                                                    "end": 10080,
                                                    "loc": {
                                                      "start": {
                                                        "line": 299,
                                                        "column": 5
                                                      },
                                                      "end": {
                                                        "line": 299,
                                                        "column": 10
                                                      }
                                                    },
                                                    "name": "child"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 10081,
                                                    "end": 10089,
                                                    "loc": {
                                                      "start": {
                                                        "line": 299,
                                                        "column": 11
                                                      },
                                                      "end": {
                                                        "line": 299,
                                                        "column": 19
                                                      }
                                                    },
                                                    "name": "material"
                                                  },
                                                  "computed": false
                                                },
                                                "right": {
                                                  "type": "Identifier",
                                                  "start": 10092,
                                                  "end": 10097,
                                                  "loc": {
                                                    "start": {
                                                      "line": 299,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 299,
                                                      "column": 27
                                                    }
                                                  },
                                                  "name": "entry"
                                                }
                                              }
                                            }
                                          ]
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  }
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " This material is already known",
                                "start": 9927,
                                "end": 9960,
                                "loc": {
                                  "start": {
                                    "line": 295,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 295,
                                    "column": 36
                                  }
                                },
                                "range": [
                                  9927,
                                  9960
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "leadingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Compress materials",
                    "start": 9607,
                    "end": 9628,
                    "loc": {
                      "start": {
                        "line": 285,
                        "column": 1
                      },
                      "end": {
                        "line": 285,
                        "column": 22
                      }
                    },
                    "range": [
                      9607,
                      9628
                    ]
                  }
                ]
              },
              {
                "type": "ExpressionStatement",
                "start": 10127,
                "end": 10150,
                "loc": {
                  "start": {
                    "line": 305,
                    "column": 1
                  },
                  "end": {
                    "line": 305,
                    "column": 24
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 10127,
                  "end": 10149,
                  "loc": {
                    "start": {
                      "line": 305,
                      "column": 1
                    },
                    "end": {
                      "line": 305,
                      "column": 23
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 10127,
                    "end": 10147,
                    "loc": {
                      "start": {
                        "line": 305,
                        "column": 1
                      },
                      "end": {
                        "line": 305,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10127,
                      "end": 10131,
                      "loc": {
                        "start": {
                          "line": 305,
                          "column": 1
                        },
                        "end": {
                          "line": 305,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10132,
                      "end": 10147,
                      "loc": {
                        "start": {
                          "line": 305,
                          "column": 6
                        },
                        "end": {
                          "line": 305,
                          "column": 21
                        }
                      },
                      "name": "updateMaterials"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              },
              {
                "type": "ReturnStatement",
                "start": 10153,
                "end": 10165,
                "loc": {
                  "start": {
                    "line": 306,
                    "column": 1
                  },
                  "end": {
                    "line": 306,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 10160,
                  "end": 10164,
                  "loc": {
                    "start": {
                      "line": 306,
                      "column": 8
                    },
                    "end": {
                      "line": 306,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10172,
      "end": 10304,
      "loc": {
        "start": {
          "line": 309,
          "column": 0
        },
        "end": {
          "line": 311,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10172,
        "end": 10304,
        "loc": {
          "start": {
            "line": 309,
            "column": 0
          },
          "end": {
            "line": 311,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10172,
          "end": 10204,
          "loc": {
            "start": {
              "line": 309,
              "column": 0
            },
            "end": {
              "line": 309,
              "column": 32
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10172,
            "end": 10196,
            "loc": {
              "start": {
                "line": 309,
                "column": 0
              },
              "end": {
                "line": 309,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10172,
              "end": 10186,
              "loc": {
                "start": {
                  "line": 309,
                  "column": 0
                },
                "end": {
                  "line": 309,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10172,
                "end": 10177,
                "loc": {
                  "start": {
                    "line": 309,
                    "column": 0
                  },
                  "end": {
                    "line": 309,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10178,
                "end": 10186,
                "loc": {
                  "start": {
                    "line": 309,
                    "column": 6
                  },
                  "end": {
                    "line": 309,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10187,
              "end": 10196,
              "loc": {
                "start": {
                  "line": 309,
                  "column": 15
                },
                "end": {
                  "line": 309,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10197,
            "end": 10204,
            "loc": {
              "start": {
                "line": 309,
                "column": 25
              },
              "end": {
                "line": 309,
                "column": 32
              }
            },
            "name": "animate"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10207,
          "end": 10304,
          "loc": {
            "start": {
              "line": 309,
              "column": 35
            },
            "end": {
              "line": 311,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10197,
            "end": 10204,
            "loc": {
              "start": {
                "line": 309,
                "column": 25
              },
              "end": {
                "line": 309,
                "column": 32
              }
            },
            "name": "animate"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10216,
              "end": 10226,
              "loc": {
                "start": {
                  "line": 309,
                  "column": 44
                },
                "end": {
                  "line": 309,
                  "column": 54
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10228,
            "end": 10304,
            "loc": {
              "start": {
                "line": 309,
                "column": 56
              },
              "end": {
                "line": 311,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 10232,
                "end": 10301,
                "loc": {
                  "start": {
                    "line": 310,
                    "column": 1
                  },
                  "end": {
                    "line": 310,
                    "column": 70
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 10239,
                  "end": 10300,
                  "loc": {
                    "start": {
                      "line": 310,
                      "column": 8
                    },
                    "end": {
                      "line": 310,
                      "column": 69
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 10239,
                    "end": 10250,
                    "loc": {
                      "start": {
                        "line": 310,
                        "column": 8
                      },
                      "end": {
                        "line": 310,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10239,
                      "end": 10243,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 8
                        },
                        "end": {
                          "line": 310,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10244,
                      "end": 10250,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 13
                        },
                        "end": {
                          "line": 310,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 10253,
                    "end": 10280,
                    "loc": {
                      "start": {
                        "line": 310,
                        "column": 22
                      },
                      "end": {
                        "line": 310,
                        "column": 49
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10257,
                      "end": 10262,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 26
                        },
                        "end": {
                          "line": 310,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 10263,
                        "end": 10267,
                        "loc": {
                          "start": {
                            "line": 310,
                            "column": 32
                          },
                          "end": {
                            "line": 310,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "Identifier",
                        "start": 10269,
                        "end": 10279,
                        "loc": {
                          "start": {
                            "line": 310,
                            "column": 38
                          },
                          "end": {
                            "line": 310,
                            "column": 48
                          }
                        },
                        "name": "properties"
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10283,
                    "end": 10300,
                    "loc": {
                      "start": {
                        "line": 310,
                        "column": 52
                      },
                      "end": {
                        "line": 310,
                        "column": 69
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10287,
                      "end": 10292,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 56
                        },
                        "end": {
                          "line": 310,
                          "column": 61
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10293,
                        "end": 10295,
                        "loc": {
                          "start": {
                            "line": 310,
                            "column": 62
                          },
                          "end": {
                            "line": 310,
                            "column": 64
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10297,
                        "end": 10299,
                        "loc": {
                          "start": {
                            "line": 310,
                            "column": 66
                          },
                          "end": {
                            "line": 310,
                            "column": 68
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10308,
      "end": 10347,
      "loc": {
        "start": {
          "line": 313,
          "column": 0
        },
        "end": {
          "line": 313,
          "column": 39
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10308,
        "end": 10346,
        "loc": {
          "start": {
            "line": 313,
            "column": 0
          },
          "end": {
            "line": 313,
            "column": 38
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10308,
          "end": 10339,
          "loc": {
            "start": {
              "line": 313,
              "column": 0
            },
            "end": {
              "line": 313,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10308,
            "end": 10332,
            "loc": {
              "start": {
                "line": 313,
                "column": 0
              },
              "end": {
                "line": 313,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10308,
              "end": 10322,
              "loc": {
                "start": {
                  "line": 313,
                  "column": 0
                },
                "end": {
                  "line": 313,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10308,
                "end": 10313,
                "loc": {
                  "start": {
                    "line": 313,
                    "column": 0
                  },
                  "end": {
                    "line": 313,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10314,
                "end": 10322,
                "loc": {
                  "start": {
                    "line": 313,
                    "column": 6
                  },
                  "end": {
                    "line": 313,
                    "column": 14
                  }
                },
                "name": "Material"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10323,
              "end": 10332,
              "loc": {
                "start": {
                  "line": 313,
                  "column": 15
                },
                "end": {
                  "line": 313,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10333,
            "end": 10339,
            "loc": {
              "start": {
                "line": 313,
                "column": 25
              },
              "end": {
                "line": 313,
                "column": 31
              }
            },
            "name": "tweens"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 10342,
          "end": 10346,
          "loc": {
            "start": {
              "line": 313,
              "column": 34
            },
            "end": {
              "line": 313,
              "column": 38
            }
          },
          "value": true,
          "rawValue": true,
          "raw": "true"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10349,
      "end": 10481,
      "loc": {
        "start": {
          "line": 314,
          "column": 0
        },
        "end": {
          "line": 316,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10349,
        "end": 10481,
        "loc": {
          "start": {
            "line": 314,
            "column": 0
          },
          "end": {
            "line": 316,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10349,
          "end": 10381,
          "loc": {
            "start": {
              "line": 314,
              "column": 0
            },
            "end": {
              "line": 314,
              "column": 32
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10349,
            "end": 10373,
            "loc": {
              "start": {
                "line": 314,
                "column": 0
              },
              "end": {
                "line": 314,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10349,
              "end": 10363,
              "loc": {
                "start": {
                  "line": 314,
                  "column": 0
                },
                "end": {
                  "line": 314,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10349,
                "end": 10354,
                "loc": {
                  "start": {
                    "line": 314,
                    "column": 0
                  },
                  "end": {
                    "line": 314,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10355,
                "end": 10363,
                "loc": {
                  "start": {
                    "line": 314,
                    "column": 6
                  },
                  "end": {
                    "line": 314,
                    "column": 14
                  }
                },
                "name": "Material"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10364,
              "end": 10373,
              "loc": {
                "start": {
                  "line": 314,
                  "column": 15
                },
                "end": {
                  "line": 314,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10374,
            "end": 10381,
            "loc": {
              "start": {
                "line": 314,
                "column": 25
              },
              "end": {
                "line": 314,
                "column": 32
              }
            },
            "name": "animate"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10384,
          "end": 10481,
          "loc": {
            "start": {
              "line": 314,
              "column": 35
            },
            "end": {
              "line": 316,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10374,
            "end": 10381,
            "loc": {
              "start": {
                "line": 314,
                "column": 25
              },
              "end": {
                "line": 314,
                "column": 32
              }
            },
            "name": "animate"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10393,
              "end": 10403,
              "loc": {
                "start": {
                  "line": 314,
                  "column": 44
                },
                "end": {
                  "line": 314,
                  "column": 54
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10405,
            "end": 10481,
            "loc": {
              "start": {
                "line": 314,
                "column": 56
              },
              "end": {
                "line": 316,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 10409,
                "end": 10478,
                "loc": {
                  "start": {
                    "line": 315,
                    "column": 1
                  },
                  "end": {
                    "line": 315,
                    "column": 70
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 10416,
                  "end": 10477,
                  "loc": {
                    "start": {
                      "line": 315,
                      "column": 8
                    },
                    "end": {
                      "line": 315,
                      "column": 69
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 10416,
                    "end": 10427,
                    "loc": {
                      "start": {
                        "line": 315,
                        "column": 8
                      },
                      "end": {
                        "line": 315,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10416,
                      "end": 10420,
                      "loc": {
                        "start": {
                          "line": 315,
                          "column": 8
                        },
                        "end": {
                          "line": 315,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10421,
                      "end": 10427,
                      "loc": {
                        "start": {
                          "line": 315,
                          "column": 13
                        },
                        "end": {
                          "line": 315,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 10430,
                    "end": 10457,
                    "loc": {
                      "start": {
                        "line": 315,
                        "column": 22
                      },
                      "end": {
                        "line": 315,
                        "column": 49
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10434,
                      "end": 10439,
                      "loc": {
                        "start": {
                          "line": 315,
                          "column": 26
                        },
                        "end": {
                          "line": 315,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 10440,
                        "end": 10444,
                        "loc": {
                          "start": {
                            "line": 315,
                            "column": 32
                          },
                          "end": {
                            "line": 315,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "Identifier",
                        "start": 10446,
                        "end": 10456,
                        "loc": {
                          "start": {
                            "line": 315,
                            "column": 38
                          },
                          "end": {
                            "line": 315,
                            "column": 48
                          }
                        },
                        "name": "properties"
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10460,
                    "end": 10477,
                    "loc": {
                      "start": {
                        "line": 315,
                        "column": 52
                      },
                      "end": {
                        "line": 315,
                        "column": 69
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10464,
                      "end": 10469,
                      "loc": {
                        "start": {
                          "line": 315,
                          "column": 56
                        },
                        "end": {
                          "line": 315,
                          "column": 61
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10470,
                        "end": 10472,
                        "loc": {
                          "start": {
                            "line": 315,
                            "column": 62
                          },
                          "end": {
                            "line": 315,
                            "column": 64
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10474,
                        "end": 10476,
                        "loc": {
                          "start": {
                            "line": 315,
                            "column": 66
                          },
                          "end": {
                            "line": 315,
                            "column": 68
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10485,
      "end": 10641,
      "loc": {
        "start": {
          "line": 318,
          "column": 0
        },
        "end": {
          "line": 320,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10485,
        "end": 10641,
        "loc": {
          "start": {
            "line": 318,
            "column": 0
          },
          "end": {
            "line": 320,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10485,
          "end": 10526,
          "loc": {
            "start": {
              "line": 318,
              "column": 0
            },
            "end": {
              "line": 318,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10485,
            "end": 10509,
            "loc": {
              "start": {
                "line": 318,
                "column": 0
              },
              "end": {
                "line": 318,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10485,
              "end": 10499,
              "loc": {
                "start": {
                  "line": 318,
                  "column": 0
                },
                "end": {
                  "line": 318,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10485,
                "end": 10490,
                "loc": {
                  "start": {
                    "line": 318,
                    "column": 0
                  },
                  "end": {
                    "line": 318,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10491,
                "end": 10499,
                "loc": {
                  "start": {
                    "line": 318,
                    "column": 6
                  },
                  "end": {
                    "line": 318,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10500,
              "end": 10509,
              "loc": {
                "start": {
                  "line": 318,
                  "column": 15
                },
                "end": {
                  "line": 318,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10510,
            "end": 10526,
            "loc": {
              "start": {
                "line": 318,
                "column": 25
              },
              "end": {
                "line": 318,
                "column": 41
              }
            },
            "name": "animateMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10529,
          "end": 10641,
          "loc": {
            "start": {
              "line": 318,
              "column": 44
            },
            "end": {
              "line": 320,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10510,
            "end": 10526,
            "loc": {
              "start": {
                "line": 318,
                "column": 25
              },
              "end": {
                "line": 318,
                "column": 41
              }
            },
            "name": "animateMaterials"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10538,
              "end": 10548,
              "loc": {
                "start": {
                  "line": 318,
                  "column": 53
                },
                "end": {
                  "line": 318,
                  "column": 63
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10550,
            "end": 10641,
            "loc": {
              "start": {
                "line": 318,
                "column": 65
              },
              "end": {
                "line": 320,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 10554,
                "end": 10638,
                "loc": {
                  "start": {
                    "line": 319,
                    "column": 1
                  },
                  "end": {
                    "line": 319,
                    "column": 85
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 10561,
                  "end": 10637,
                  "loc": {
                    "start": {
                      "line": 319,
                      "column": 8
                    },
                    "end": {
                      "line": 319,
                      "column": 84
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 10561,
                    "end": 10572,
                    "loc": {
                      "start": {
                        "line": 319,
                        "column": 8
                      },
                      "end": {
                        "line": 319,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10561,
                      "end": 10565,
                      "loc": {
                        "start": {
                          "line": 319,
                          "column": 8
                        },
                        "end": {
                          "line": 319,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10566,
                      "end": 10572,
                      "loc": {
                        "start": {
                          "line": 319,
                          "column": 13
                        },
                        "end": {
                          "line": 319,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 10575,
                    "end": 10617,
                    "loc": {
                      "start": {
                        "line": 319,
                        "column": 22
                      },
                      "end": {
                        "line": 319,
                        "column": 64
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10579,
                      "end": 10584,
                      "loc": {
                        "start": {
                          "line": 319,
                          "column": 26
                        },
                        "end": {
                          "line": 319,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 10585,
                        "end": 10589,
                        "loc": {
                          "start": {
                            "line": 319,
                            "column": 32
                          },
                          "end": {
                            "line": 319,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10591,
                        "end": 10616,
                        "loc": {
                          "start": {
                            "line": 319,
                            "column": 38
                          },
                          "end": {
                            "line": 319,
                            "column": 63
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 10593,
                            "end": 10614,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 40
                              },
                              "end": {
                                "line": 319,
                                "column": 61
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 10593,
                              "end": 10602,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 40
                                },
                                "end": {
                                  "line": 319,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 10604,
                              "end": 10614,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 51
                                },
                                "end": {
                                  "line": 319,
                                  "column": 61
                                }
                              },
                              "name": "properties"
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10620,
                    "end": 10637,
                    "loc": {
                      "start": {
                        "line": 319,
                        "column": 67
                      },
                      "end": {
                        "line": 319,
                        "column": 84
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10624,
                      "end": 10629,
                      "loc": {
                        "start": {
                          "line": 319,
                          "column": 71
                        },
                        "end": {
                          "line": 319,
                          "column": 76
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10630,
                        "end": 10632,
                        "loc": {
                          "start": {
                            "line": 319,
                            "column": 77
                          },
                          "end": {
                            "line": 319,
                            "column": 79
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10634,
                        "end": 10636,
                        "loc": {
                          "start": {
                            "line": 319,
                            "column": 81
                          },
                          "end": {
                            "line": 319,
                            "column": 83
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10645,
      "end": 10815,
      "loc": {
        "start": {
          "line": 322,
          "column": 0
        },
        "end": {
          "line": 324,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10645,
        "end": 10815,
        "loc": {
          "start": {
            "line": 322,
            "column": 0
          },
          "end": {
            "line": 324,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10645,
          "end": 10689,
          "loc": {
            "start": {
              "line": 322,
              "column": 0
            },
            "end": {
              "line": 322,
              "column": 44
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10645,
            "end": 10669,
            "loc": {
              "start": {
                "line": 322,
                "column": 0
              },
              "end": {
                "line": 322,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10645,
              "end": 10659,
              "loc": {
                "start": {
                  "line": 322,
                  "column": 0
                },
                "end": {
                  "line": 322,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10645,
                "end": 10650,
                "loc": {
                  "start": {
                    "line": 322,
                    "column": 0
                  },
                  "end": {
                    "line": 322,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10651,
                "end": 10659,
                "loc": {
                  "start": {
                    "line": 322,
                    "column": 6
                  },
                  "end": {
                    "line": 322,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10660,
              "end": 10669,
              "loc": {
                "start": {
                  "line": 322,
                  "column": 15
                },
                "end": {
                  "line": 322,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10670,
            "end": 10689,
            "loc": {
              "start": {
                "line": 322,
                "column": 25
              },
              "end": {
                "line": 322,
                "column": 44
              }
            },
            "name": "animateAllMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10692,
          "end": 10815,
          "loc": {
            "start": {
              "line": 322,
              "column": 47
            },
            "end": {
              "line": 324,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10670,
            "end": 10689,
            "loc": {
              "start": {
                "line": 322,
                "column": 25
              },
              "end": {
                "line": 322,
                "column": 44
              }
            },
            "name": "animateAllMaterials"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10701,
              "end": 10711,
              "loc": {
                "start": {
                  "line": 322,
                  "column": 56
                },
                "end": {
                  "line": 322,
                  "column": 66
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10713,
            "end": 10815,
            "loc": {
              "start": {
                "line": 322,
                "column": 68
              },
              "end": {
                "line": 324,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 10717,
                "end": 10812,
                "loc": {
                  "start": {
                    "line": 323,
                    "column": 1
                  },
                  "end": {
                    "line": 323,
                    "column": 96
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 10724,
                  "end": 10811,
                  "loc": {
                    "start": {
                      "line": 323,
                      "column": 8
                    },
                    "end": {
                      "line": 323,
                      "column": 95
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 10724,
                    "end": 10735,
                    "loc": {
                      "start": {
                        "line": 323,
                        "column": 8
                      },
                      "end": {
                        "line": 323,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10724,
                      "end": 10728,
                      "loc": {
                        "start": {
                          "line": 323,
                          "column": 8
                        },
                        "end": {
                          "line": 323,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10729,
                      "end": 10735,
                      "loc": {
                        "start": {
                          "line": 323,
                          "column": 13
                        },
                        "end": {
                          "line": 323,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 10738,
                    "end": 10791,
                    "loc": {
                      "start": {
                        "line": 323,
                        "column": 22
                      },
                      "end": {
                        "line": 323,
                        "column": 75
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10742,
                      "end": 10747,
                      "loc": {
                        "start": {
                          "line": 323,
                          "column": 26
                        },
                        "end": {
                          "line": 323,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 10748,
                        "end": 10752,
                        "loc": {
                          "start": {
                            "line": 323,
                            "column": 32
                          },
                          "end": {
                            "line": 323,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10754,
                        "end": 10790,
                        "loc": {
                          "start": {
                            "line": 323,
                            "column": 38
                          },
                          "end": {
                            "line": 323,
                            "column": 74
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 10756,
                            "end": 10788,
                            "loc": {
                              "start": {
                                "line": 323,
                                "column": 40
                              },
                              "end": {
                                "line": 323,
                                "column": 72
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 10756,
                              "end": 10765,
                              "loc": {
                                "start": {
                                  "line": 323,
                                  "column": 40
                                },
                                "end": {
                                  "line": 323,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "ObjectExpression",
                              "start": 10767,
                              "end": 10788,
                              "loc": {
                                "start": {
                                  "line": 323,
                                  "column": 51
                                },
                                "end": {
                                  "line": 323,
                                  "column": 72
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 10769,
                                  "end": 10786,
                                  "loc": {
                                    "start": {
                                      "line": 323,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 323,
                                      "column": 70
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 10769,
                                    "end": 10772,
                                    "loc": {
                                      "start": {
                                        "line": 323,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 323,
                                        "column": 56
                                      }
                                    },
                                    "name": "all"
                                  },
                                  "value": {
                                    "type": "ArrayExpression",
                                    "start": 10774,
                                    "end": 10786,
                                    "loc": {
                                      "start": {
                                        "line": 323,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 323,
                                        "column": 70
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Identifier",
                                        "start": 10775,
                                        "end": 10785,
                                        "loc": {
                                          "start": {
                                            "line": 323,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 323,
                                            "column": 69
                                          }
                                        },
                                        "name": "properties"
                                      }
                                    ]
                                  },
                                  "kind": "init"
                                }
                              ]
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10794,
                    "end": 10811,
                    "loc": {
                      "start": {
                        "line": 323,
                        "column": 78
                      },
                      "end": {
                        "line": 323,
                        "column": 95
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10798,
                      "end": 10803,
                      "loc": {
                        "start": {
                          "line": 323,
                          "column": 82
                        },
                        "end": {
                          "line": 323,
                          "column": 87
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10804,
                        "end": 10806,
                        "loc": {
                          "start": {
                            "line": 323,
                            "column": 88
                          },
                          "end": {
                            "line": 323,
                            "column": 90
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10808,
                        "end": 10810,
                        "loc": {
                          "start": {
                            "line": 323,
                            "column": 92
                          },
                          "end": {
                            "line": 323,
                            "column": 94
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10819,
      "end": 10986,
      "loc": {
        "start": {
          "line": 326,
          "column": 0
        },
        "end": {
          "line": 328,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10819,
        "end": 10986,
        "loc": {
          "start": {
            "line": 326,
            "column": 0
          },
          "end": {
            "line": 328,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10819,
          "end": 10857,
          "loc": {
            "start": {
              "line": 326,
              "column": 0
            },
            "end": {
              "line": 326,
              "column": 38
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10819,
            "end": 10843,
            "loc": {
              "start": {
                "line": 326,
                "column": 0
              },
              "end": {
                "line": 326,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10819,
              "end": 10833,
              "loc": {
                "start": {
                  "line": 326,
                  "column": 0
                },
                "end": {
                  "line": 326,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10819,
                "end": 10824,
                "loc": {
                  "start": {
                    "line": 326,
                    "column": 0
                  },
                  "end": {
                    "line": 326,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10825,
                "end": 10833,
                "loc": {
                  "start": {
                    "line": 326,
                    "column": 6
                  },
                  "end": {
                    "line": 326,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10834,
              "end": 10843,
              "loc": {
                "start": {
                  "line": 326,
                  "column": 15
                },
                "end": {
                  "line": 326,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10844,
            "end": 10857,
            "loc": {
              "start": {
                "line": 326,
                "column": 25
              },
              "end": {
                "line": 326,
                "column": 38
              }
            },
            "name": "animateMeshes"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10860,
          "end": 10986,
          "loc": {
            "start": {
              "line": 326,
              "column": 41
            },
            "end": {
              "line": 328,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10844,
            "end": 10857,
            "loc": {
              "start": {
                "line": 326,
                "column": 25
              },
              "end": {
                "line": 326,
                "column": 38
              }
            },
            "name": "animateMeshes"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10869,
              "end": 10879,
              "loc": {
                "start": {
                  "line": 326,
                  "column": 50
                },
                "end": {
                  "line": 326,
                  "column": 60
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10881,
            "end": 10986,
            "loc": {
              "start": {
                "line": 326,
                "column": 62
              },
              "end": {
                "line": 328,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 10885,
                "end": 10983,
                "loc": {
                  "start": {
                    "line": 327,
                    "column": 1
                  },
                  "end": {
                    "line": 327,
                    "column": 99
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 10892,
                  "end": 10982,
                  "loc": {
                    "start": {
                      "line": 327,
                      "column": 8
                    },
                    "end": {
                      "line": 327,
                      "column": 98
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 10892,
                    "end": 10903,
                    "loc": {
                      "start": {
                        "line": 327,
                        "column": 8
                      },
                      "end": {
                        "line": 327,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10892,
                      "end": 10896,
                      "loc": {
                        "start": {
                          "line": 327,
                          "column": 8
                        },
                        "end": {
                          "line": 327,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10897,
                      "end": 10903,
                      "loc": {
                        "start": {
                          "line": 327,
                          "column": 13
                        },
                        "end": {
                          "line": 327,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 10906,
                    "end": 10962,
                    "loc": {
                      "start": {
                        "line": 327,
                        "column": 22
                      },
                      "end": {
                        "line": 327,
                        "column": 78
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10910,
                      "end": 10915,
                      "loc": {
                        "start": {
                          "line": 327,
                          "column": 26
                        },
                        "end": {
                          "line": 327,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 10916,
                        "end": 10920,
                        "loc": {
                          "start": {
                            "line": 327,
                            "column": 32
                          },
                          "end": {
                            "line": 327,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10922,
                        "end": 10961,
                        "loc": {
                          "start": {
                            "line": 327,
                            "column": 38
                          },
                          "end": {
                            "line": 327,
                            "column": 77
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 10924,
                            "end": 10959,
                            "loc": {
                              "start": {
                                "line": 327,
                                "column": 40
                              },
                              "end": {
                                "line": 327,
                                "column": 75
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 10924,
                              "end": 10933,
                              "loc": {
                                "start": {
                                  "line": 327,
                                  "column": 40
                                },
                                "end": {
                                  "line": 327,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "ObjectExpression",
                              "start": 10935,
                              "end": 10959,
                              "loc": {
                                "start": {
                                  "line": 327,
                                  "column": 51
                                },
                                "end": {
                                  "line": 327,
                                  "column": 75
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 10937,
                                  "end": 10957,
                                  "loc": {
                                    "start": {
                                      "line": 327,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 327,
                                      "column": 73
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 10937,
                                    "end": 10943,
                                    "loc": {
                                      "start": {
                                        "line": 327,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 327,
                                        "column": 59
                                      }
                                    },
                                    "name": "meshes"
                                  },
                                  "value": {
                                    "type": "ArrayExpression",
                                    "start": 10945,
                                    "end": 10957,
                                    "loc": {
                                      "start": {
                                        "line": 327,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 327,
                                        "column": 73
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Identifier",
                                        "start": 10946,
                                        "end": 10956,
                                        "loc": {
                                          "start": {
                                            "line": 327,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 327,
                                            "column": 72
                                          }
                                        },
                                        "name": "properties"
                                      }
                                    ]
                                  },
                                  "kind": "init"
                                }
                              ]
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10965,
                    "end": 10982,
                    "loc": {
                      "start": {
                        "line": 327,
                        "column": 81
                      },
                      "end": {
                        "line": 327,
                        "column": 98
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10969,
                      "end": 10974,
                      "loc": {
                        "start": {
                          "line": 327,
                          "column": 85
                        },
                        "end": {
                          "line": 327,
                          "column": 90
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10975,
                        "end": 10977,
                        "loc": {
                          "start": {
                            "line": 327,
                            "column": 91
                          },
                          "end": {
                            "line": 327,
                            "column": 93
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10979,
                        "end": 10981,
                        "loc": {
                          "start": {
                            "line": 327,
                            "column": 95
                          },
                          "end": {
                            "line": 327,
                            "column": 97
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10990,
      "end": 11155,
      "loc": {
        "start": {
          "line": 330,
          "column": 0
        },
        "end": {
          "line": 332,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10990,
        "end": 11155,
        "loc": {
          "start": {
            "line": 330,
            "column": 0
          },
          "end": {
            "line": 332,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10990,
          "end": 11027,
          "loc": {
            "start": {
              "line": 330,
              "column": 0
            },
            "end": {
              "line": 330,
              "column": 37
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10990,
            "end": 11014,
            "loc": {
              "start": {
                "line": 330,
                "column": 0
              },
              "end": {
                "line": 330,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10990,
              "end": 11004,
              "loc": {
                "start": {
                  "line": 330,
                  "column": 0
                },
                "end": {
                  "line": 330,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10990,
                "end": 10995,
                "loc": {
                  "start": {
                    "line": 330,
                    "column": 0
                  },
                  "end": {
                    "line": 330,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10996,
                "end": 11004,
                "loc": {
                  "start": {
                    "line": 330,
                    "column": 6
                  },
                  "end": {
                    "line": 330,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11005,
              "end": 11014,
              "loc": {
                "start": {
                  "line": 330,
                  "column": 15
                },
                "end": {
                  "line": 330,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11015,
            "end": 11027,
            "loc": {
              "start": {
                "line": 330,
                "column": 25
              },
              "end": {
                "line": 330,
                "column": 37
              }
            },
            "name": "animateLines"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11030,
          "end": 11155,
          "loc": {
            "start": {
              "line": 330,
              "column": 40
            },
            "end": {
              "line": 332,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11015,
            "end": 11027,
            "loc": {
              "start": {
                "line": 330,
                "column": 25
              },
              "end": {
                "line": 330,
                "column": 37
              }
            },
            "name": "animateLines"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 11039,
              "end": 11049,
              "loc": {
                "start": {
                  "line": 330,
                  "column": 49
                },
                "end": {
                  "line": 330,
                  "column": 59
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11051,
            "end": 11155,
            "loc": {
              "start": {
                "line": 330,
                "column": 61
              },
              "end": {
                "line": 332,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 11055,
                "end": 11152,
                "loc": {
                  "start": {
                    "line": 331,
                    "column": 1
                  },
                  "end": {
                    "line": 331,
                    "column": 98
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 11062,
                  "end": 11151,
                  "loc": {
                    "start": {
                      "line": 331,
                      "column": 8
                    },
                    "end": {
                      "line": 331,
                      "column": 97
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 11062,
                    "end": 11073,
                    "loc": {
                      "start": {
                        "line": 331,
                        "column": 8
                      },
                      "end": {
                        "line": 331,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 11062,
                      "end": 11066,
                      "loc": {
                        "start": {
                          "line": 331,
                          "column": 8
                        },
                        "end": {
                          "line": 331,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11067,
                      "end": 11073,
                      "loc": {
                        "start": {
                          "line": 331,
                          "column": 13
                        },
                        "end": {
                          "line": 331,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 11076,
                    "end": 11131,
                    "loc": {
                      "start": {
                        "line": 331,
                        "column": 22
                      },
                      "end": {
                        "line": 331,
                        "column": 77
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 11080,
                      "end": 11085,
                      "loc": {
                        "start": {
                          "line": 331,
                          "column": 26
                        },
                        "end": {
                          "line": 331,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 11086,
                        "end": 11090,
                        "loc": {
                          "start": {
                            "line": 331,
                            "column": 32
                          },
                          "end": {
                            "line": 331,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 11092,
                        "end": 11130,
                        "loc": {
                          "start": {
                            "line": 331,
                            "column": 38
                          },
                          "end": {
                            "line": 331,
                            "column": 76
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 11094,
                            "end": 11128,
                            "loc": {
                              "start": {
                                "line": 331,
                                "column": 40
                              },
                              "end": {
                                "line": 331,
                                "column": 74
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 11094,
                              "end": 11103,
                              "loc": {
                                "start": {
                                  "line": 331,
                                  "column": 40
                                },
                                "end": {
                                  "line": 331,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "ObjectExpression",
                              "start": 11105,
                              "end": 11128,
                              "loc": {
                                "start": {
                                  "line": 331,
                                  "column": 51
                                },
                                "end": {
                                  "line": 331,
                                  "column": 74
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 11107,
                                  "end": 11126,
                                  "loc": {
                                    "start": {
                                      "line": 331,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 331,
                                      "column": 72
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 11107,
                                    "end": 11112,
                                    "loc": {
                                      "start": {
                                        "line": 331,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 331,
                                        "column": 58
                                      }
                                    },
                                    "name": "lines"
                                  },
                                  "value": {
                                    "type": "ArrayExpression",
                                    "start": 11114,
                                    "end": 11126,
                                    "loc": {
                                      "start": {
                                        "line": 331,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 331,
                                        "column": 72
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Identifier",
                                        "start": 11115,
                                        "end": 11125,
                                        "loc": {
                                          "start": {
                                            "line": 331,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 331,
                                            "column": 71
                                          }
                                        },
                                        "name": "properties"
                                      }
                                    ]
                                  },
                                  "kind": "init"
                                }
                              ]
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 11134,
                    "end": 11151,
                    "loc": {
                      "start": {
                        "line": 331,
                        "column": 80
                      },
                      "end": {
                        "line": 331,
                        "column": 97
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 11138,
                      "end": 11143,
                      "loc": {
                        "start": {
                          "line": 331,
                          "column": 84
                        },
                        "end": {
                          "line": 331,
                          "column": 89
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 11144,
                        "end": 11146,
                        "loc": {
                          "start": {
                            "line": 331,
                            "column": 90
                          },
                          "end": {
                            "line": 331,
                            "column": 92
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 11148,
                        "end": 11150,
                        "loc": {
                          "start": {
                            "line": 331,
                            "column": 94
                          },
                          "end": {
                            "line": 331,
                            "column": 96
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11159,
      "end": 11394,
      "loc": {
        "start": {
          "line": 334,
          "column": 0
        },
        "end": {
          "line": 342,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11159,
        "end": 11394,
        "loc": {
          "start": {
            "line": 334,
            "column": 0
          },
          "end": {
            "line": 342,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11159,
          "end": 11191,
          "loc": {
            "start": {
              "line": 334,
              "column": 0
            },
            "end": {
              "line": 334,
              "column": 32
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11159,
            "end": 11183,
            "loc": {
              "start": {
                "line": 334,
                "column": 0
              },
              "end": {
                "line": 334,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11159,
              "end": 11173,
              "loc": {
                "start": {
                  "line": 334,
                  "column": 0
                },
                "end": {
                  "line": 334,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11159,
                "end": 11164,
                "loc": {
                  "start": {
                    "line": 334,
                    "column": 0
                  },
                  "end": {
                    "line": 334,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11165,
                "end": 11173,
                "loc": {
                  "start": {
                    "line": 334,
                    "column": 6
                  },
                  "end": {
                    "line": 334,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11174,
              "end": 11183,
              "loc": {
                "start": {
                  "line": 334,
                  "column": 15
                },
                "end": {
                  "line": 334,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11184,
            "end": 11191,
            "loc": {
              "start": {
                "line": 334,
                "column": 25
              },
              "end": {
                "line": 334,
                "column": 32
              }
            },
            "name": "fadeOut"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11194,
          "end": 11394,
          "loc": {
            "start": {
              "line": 334,
              "column": 35
            },
            "end": {
              "line": 342,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11184,
            "end": 11191,
            "loc": {
              "start": {
                "line": 334,
                "column": 25
              },
              "end": {
                "line": 334,
                "column": 32
              }
            },
            "name": "fadeOut"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 11203,
              "end": 11209,
              "loc": {
                "start": {
                  "line": 334,
                  "column": 44
                },
                "end": {
                  "line": 334,
                  "column": 50
                }
              },
              "name": "length"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11211,
            "end": 11394,
            "loc": {
              "start": {
                "line": 334,
                "column": 52
              },
              "end": {
                "line": 342,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 11218,
                "end": 11373,
                "loc": {
                  "start": {
                    "line": 335,
                    "column": 4
                  },
                  "end": {
                    "line": 340,
                    "column": 26
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 11218,
                  "end": 11372,
                  "loc": {
                    "start": {
                      "line": 335,
                      "column": 4
                    },
                    "end": {
                      "line": 340,
                      "column": 25
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 11218,
                    "end": 11359,
                    "loc": {
                      "start": {
                        "line": 335,
                        "column": 4
                      },
                      "end": {
                        "line": 340,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 11218,
                      "end": 11353,
                      "loc": {
                        "start": {
                          "line": 335,
                          "column": 4
                        },
                        "end": {
                          "line": 340,
                          "column": 6
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 11218,
                        "end": 11230,
                        "loc": {
                          "start": {
                            "line": 335,
                            "column": 4
                          },
                          "end": {
                            "line": 335,
                            "column": 16
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 11218,
                          "end": 11222,
                          "loc": {
                            "start": {
                              "line": 335,
                              "column": 4
                            },
                            "end": {
                              "line": 335,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11223,
                          "end": 11230,
                          "loc": {
                            "start": {
                              "line": 335,
                              "column": 9
                            },
                            "end": {
                              "line": 335,
                              "column": 16
                            }
                          },
                          "name": "animate"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ObjectExpression",
                          "start": 11231,
                          "end": 11352,
                          "loc": {
                            "start": {
                              "line": 335,
                              "column": 17
                            },
                            "end": {
                              "line": 340,
                              "column": 5
                            }
                          },
                          "properties": [
                            {
                              "type": "Property",
                              "start": 11242,
                              "end": 11345,
                              "loc": {
                                "start": {
                                  "line": 336,
                                  "column": 8
                                },
                                "end": {
                                  "line": 339,
                                  "column": 9
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 11242,
                                "end": 11251,
                                "loc": {
                                  "start": {
                                    "line": 336,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 336,
                                    "column": 17
                                  }
                                },
                                "name": "materials"
                              },
                              "value": {
                                "type": "ObjectExpression",
                                "start": 11253,
                                "end": 11345,
                                "loc": {
                                  "start": {
                                    "line": 336,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 339,
                                    "column": 9
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 11268,
                                    "end": 11294,
                                    "loc": {
                                      "start": {
                                        "line": 337,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 337,
                                        "column": 38
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 11268,
                                      "end": 11274,
                                      "loc": {
                                        "start": {
                                          "line": 337,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 337,
                                          "column": 18
                                        }
                                      },
                                      "name": "meshes"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 11276,
                                      "end": 11294,
                                      "loc": {
                                        "start": {
                                          "line": 337,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 337,
                                          "column": 38
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 11277,
                                          "end": 11293,
                                          "loc": {
                                            "start": {
                                              "line": 337,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 337,
                                              "column": 37
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 11279,
                                              "end": 11291,
                                              "loc": {
                                                "start": {
                                                  "line": 337,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 337,
                                                  "column": 35
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 11279,
                                                "end": 11286,
                                                "loc": {
                                                  "start": {
                                                    "line": 337,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 337,
                                                    "column": 30
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "Literal",
                                                "start": 11288,
                                                "end": 11291,
                                                "loc": {
                                                  "start": {
                                                    "line": 337,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 337,
                                                    "column": 35
                                                  }
                                                },
                                                "value": 0,
                                                "rawValue": 0,
                                                "raw": "0.0"
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  },
                                  {
                                    "type": "Property",
                                    "start": 11309,
                                    "end": 11334,
                                    "loc": {
                                      "start": {
                                        "line": 338,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 338,
                                        "column": 37
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 11309,
                                      "end": 11314,
                                      "loc": {
                                        "start": {
                                          "line": 338,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 338,
                                          "column": 17
                                        }
                                      },
                                      "name": "lines"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 11316,
                                      "end": 11334,
                                      "loc": {
                                        "start": {
                                          "line": 338,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 338,
                                          "column": 37
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 11317,
                                          "end": 11333,
                                          "loc": {
                                            "start": {
                                              "line": 338,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 338,
                                              "column": 36
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 11319,
                                              "end": 11331,
                                              "loc": {
                                                "start": {
                                                  "line": 338,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 338,
                                                  "column": 34
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 11319,
                                                "end": 11326,
                                                "loc": {
                                                  "start": {
                                                    "line": 338,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 338,
                                                    "column": 29
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "Literal",
                                                "start": 11328,
                                                "end": 11331,
                                                "loc": {
                                                  "start": {
                                                    "line": 338,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 338,
                                                    "column": 34
                                                  }
                                                },
                                                "value": 0,
                                                "rawValue": 0,
                                                "raw": "0.0"
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  }
                                ]
                              },
                              "kind": "init"
                            }
                          ]
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11354,
                      "end": 11359,
                      "loc": {
                        "start": {
                          "line": 340,
                          "column": 7
                        },
                        "end": {
                          "line": 340,
                          "column": 12
                        }
                      },
                      "name": "start"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "LogicalExpression",
                      "start": 11360,
                      "end": 11371,
                      "loc": {
                        "start": {
                          "line": 340,
                          "column": 13
                        },
                        "end": {
                          "line": 340,
                          "column": 24
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 11360,
                        "end": 11366,
                        "loc": {
                          "start": {
                            "line": 340,
                            "column": 13
                          },
                          "end": {
                            "line": 340,
                            "column": 19
                          }
                        },
                        "name": "length"
                      },
                      "operator": "||",
                      "right": {
                        "type": "Literal",
                        "start": 11370,
                        "end": 11371,
                        "loc": {
                          "start": {
                            "line": 340,
                            "column": 23
                          },
                          "end": {
                            "line": 340,
                            "column": 24
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 11379,
                "end": 11391,
                "loc": {
                  "start": {
                    "line": 341,
                    "column": 4
                  },
                  "end": {
                    "line": 341,
                    "column": 16
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 11386,
                  "end": 11390,
                  "loc": {
                    "start": {
                      "line": 341,
                      "column": 11
                    },
                    "end": {
                      "line": 341,
                      "column": 15
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11398,
      "end": 11657,
      "loc": {
        "start": {
          "line": 344,
          "column": 0
        },
        "end": {
          "line": 352,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11398,
        "end": 11657,
        "loc": {
          "start": {
            "line": 344,
            "column": 0
          },
          "end": {
            "line": 352,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11398,
          "end": 11429,
          "loc": {
            "start": {
              "line": 344,
              "column": 0
            },
            "end": {
              "line": 344,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11398,
            "end": 11422,
            "loc": {
              "start": {
                "line": 344,
                "column": 0
              },
              "end": {
                "line": 344,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11398,
              "end": 11412,
              "loc": {
                "start": {
                  "line": 344,
                  "column": 0
                },
                "end": {
                  "line": 344,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11398,
                "end": 11403,
                "loc": {
                  "start": {
                    "line": 344,
                    "column": 0
                  },
                  "end": {
                    "line": 344,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11404,
                "end": 11412,
                "loc": {
                  "start": {
                    "line": 344,
                    "column": 6
                  },
                  "end": {
                    "line": 344,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11413,
              "end": 11422,
              "loc": {
                "start": {
                  "line": 344,
                  "column": 15
                },
                "end": {
                  "line": 344,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11423,
            "end": 11429,
            "loc": {
              "start": {
                "line": 344,
                "column": 25
              },
              "end": {
                "line": 344,
                "column": 31
              }
            },
            "name": "fadeIn"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11432,
          "end": 11657,
          "loc": {
            "start": {
              "line": 344,
              "column": 34
            },
            "end": {
              "line": 352,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11423,
            "end": 11429,
            "loc": {
              "start": {
                "line": 344,
                "column": 25
              },
              "end": {
                "line": 344,
                "column": 31
              }
            },
            "name": "fadeIn"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 11441,
              "end": 11447,
              "loc": {
                "start": {
                  "line": 344,
                  "column": 43
                },
                "end": {
                  "line": 344,
                  "column": 49
                }
              },
              "name": "length"
            },
            {
              "type": "Identifier",
              "start": 11449,
              "end": 11454,
              "loc": {
                "start": {
                  "line": 344,
                  "column": 51
                },
                "end": {
                  "line": 344,
                  "column": 56
                }
              },
              "name": "value"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11456,
            "end": 11657,
            "loc": {
              "start": {
                "line": 344,
                "column": 58
              },
              "end": {
                "line": 352,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 11463,
                "end": 11636,
                "loc": {
                  "start": {
                    "line": 345,
                    "column": 4
                  },
                  "end": {
                    "line": 350,
                    "column": 26
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 11463,
                  "end": 11635,
                  "loc": {
                    "start": {
                      "line": 345,
                      "column": 4
                    },
                    "end": {
                      "line": 350,
                      "column": 25
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 11463,
                    "end": 11622,
                    "loc": {
                      "start": {
                        "line": 345,
                        "column": 4
                      },
                      "end": {
                        "line": 350,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 11463,
                      "end": 11616,
                      "loc": {
                        "start": {
                          "line": 345,
                          "column": 4
                        },
                        "end": {
                          "line": 350,
                          "column": 6
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 11463,
                        "end": 11475,
                        "loc": {
                          "start": {
                            "line": 345,
                            "column": 4
                          },
                          "end": {
                            "line": 345,
                            "column": 16
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 11463,
                          "end": 11467,
                          "loc": {
                            "start": {
                              "line": 345,
                              "column": 4
                            },
                            "end": {
                              "line": 345,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11468,
                          "end": 11475,
                          "loc": {
                            "start": {
                              "line": 345,
                              "column": 9
                            },
                            "end": {
                              "line": 345,
                              "column": 16
                            }
                          },
                          "name": "animate"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ObjectExpression",
                          "start": 11476,
                          "end": 11615,
                          "loc": {
                            "start": {
                              "line": 345,
                              "column": 17
                            },
                            "end": {
                              "line": 350,
                              "column": 5
                            }
                          },
                          "properties": [
                            {
                              "type": "Property",
                              "start": 11487,
                              "end": 11608,
                              "loc": {
                                "start": {
                                  "line": 346,
                                  "column": 8
                                },
                                "end": {
                                  "line": 349,
                                  "column": 9
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 11487,
                                "end": 11496,
                                "loc": {
                                  "start": {
                                    "line": 346,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 346,
                                    "column": 17
                                  }
                                },
                                "name": "materials"
                              },
                              "value": {
                                "type": "ObjectExpression",
                                "start": 11498,
                                "end": 11608,
                                "loc": {
                                  "start": {
                                    "line": 346,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 349,
                                    "column": 9
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 11513,
                                    "end": 11548,
                                    "loc": {
                                      "start": {
                                        "line": 347,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 347,
                                        "column": 47
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 11513,
                                      "end": 11519,
                                      "loc": {
                                        "start": {
                                          "line": 347,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 347,
                                          "column": 18
                                        }
                                      },
                                      "name": "meshes"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 11521,
                                      "end": 11548,
                                      "loc": {
                                        "start": {
                                          "line": 347,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 347,
                                          "column": 47
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 11522,
                                          "end": 11547,
                                          "loc": {
                                            "start": {
                                              "line": 347,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 347,
                                              "column": 46
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 11524,
                                              "end": 11545,
                                              "loc": {
                                                "start": {
                                                  "line": 347,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 347,
                                                  "column": 44
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 11524,
                                                "end": 11531,
                                                "loc": {
                                                  "start": {
                                                    "line": 347,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 347,
                                                    "column": 30
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "LogicalExpression",
                                                "start": 11533,
                                                "end": 11545,
                                                "loc": {
                                                  "start": {
                                                    "line": 347,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 347,
                                                    "column": 44
                                                  }
                                                },
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 11533,
                                                  "end": 11538,
                                                  "loc": {
                                                    "start": {
                                                      "line": 347,
                                                      "column": 32
                                                    },
                                                    "end": {
                                                      "line": 347,
                                                      "column": 37
                                                    }
                                                  },
                                                  "name": "value"
                                                },
                                                "operator": "||",
                                                "right": {
                                                  "type": "Literal",
                                                  "start": 11542,
                                                  "end": 11545,
                                                  "loc": {
                                                    "start": {
                                                      "line": 347,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 347,
                                                      "column": 44
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1.0"
                                                }
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  },
                                  {
                                    "type": "Property",
                                    "start": 11563,
                                    "end": 11597,
                                    "loc": {
                                      "start": {
                                        "line": 348,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 348,
                                        "column": 46
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 11563,
                                      "end": 11568,
                                      "loc": {
                                        "start": {
                                          "line": 348,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 348,
                                          "column": 17
                                        }
                                      },
                                      "name": "lines"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 11570,
                                      "end": 11597,
                                      "loc": {
                                        "start": {
                                          "line": 348,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 348,
                                          "column": 46
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 11571,
                                          "end": 11596,
                                          "loc": {
                                            "start": {
                                              "line": 348,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 348,
                                              "column": 45
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 11573,
                                              "end": 11594,
                                              "loc": {
                                                "start": {
                                                  "line": 348,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 348,
                                                  "column": 43
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 11573,
                                                "end": 11580,
                                                "loc": {
                                                  "start": {
                                                    "line": 348,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 348,
                                                    "column": 29
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "LogicalExpression",
                                                "start": 11582,
                                                "end": 11594,
                                                "loc": {
                                                  "start": {
                                                    "line": 348,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 348,
                                                    "column": 43
                                                  }
                                                },
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 11582,
                                                  "end": 11587,
                                                  "loc": {
                                                    "start": {
                                                      "line": 348,
                                                      "column": 31
                                                    },
                                                    "end": {
                                                      "line": 348,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "value"
                                                },
                                                "operator": "||",
                                                "right": {
                                                  "type": "Literal",
                                                  "start": 11591,
                                                  "end": 11594,
                                                  "loc": {
                                                    "start": {
                                                      "line": 348,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 348,
                                                      "column": 43
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1.0"
                                                }
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  }
                                ]
                              },
                              "kind": "init"
                            }
                          ]
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11617,
                      "end": 11622,
                      "loc": {
                        "start": {
                          "line": 350,
                          "column": 7
                        },
                        "end": {
                          "line": 350,
                          "column": 12
                        }
                      },
                      "name": "start"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "LogicalExpression",
                      "start": 11623,
                      "end": 11634,
                      "loc": {
                        "start": {
                          "line": 350,
                          "column": 13
                        },
                        "end": {
                          "line": 350,
                          "column": 24
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 11623,
                        "end": 11629,
                        "loc": {
                          "start": {
                            "line": 350,
                            "column": 13
                          },
                          "end": {
                            "line": 350,
                            "column": 19
                          }
                        },
                        "name": "length"
                      },
                      "operator": "||",
                      "right": {
                        "type": "Literal",
                        "start": 11633,
                        "end": 11634,
                        "loc": {
                          "start": {
                            "line": 350,
                            "column": 23
                          },
                          "end": {
                            "line": 350,
                            "column": 24
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 11642,
                "end": 11654,
                "loc": {
                  "start": {
                    "line": 351,
                    "column": 4
                  },
                  "end": {
                    "line": 351,
                    "column": 16
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 11649,
                  "end": 11653,
                  "loc": {
                    "start": {
                      "line": 351,
                      "column": 11
                    },
                    "end": {
                      "line": 351,
                      "column": 15
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11661,
      "end": 11770,
      "loc": {
        "start": {
          "line": 354,
          "column": 0
        },
        "end": {
          "line": 356,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11661,
        "end": 11770,
        "loc": {
          "start": {
            "line": 354,
            "column": 0
          },
          "end": {
            "line": 356,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11661,
          "end": 11695,
          "loc": {
            "start": {
              "line": 354,
              "column": 0
            },
            "end": {
              "line": 354,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11661,
            "end": 11685,
            "loc": {
              "start": {
                "line": 354,
                "column": 0
              },
              "end": {
                "line": 354,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11661,
              "end": 11675,
              "loc": {
                "start": {
                  "line": 354,
                  "column": 0
                },
                "end": {
                  "line": 354,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11661,
                "end": 11666,
                "loc": {
                  "start": {
                    "line": 354,
                    "column": 0
                  },
                  "end": {
                    "line": 354,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11667,
                "end": 11675,
                "loc": {
                  "start": {
                    "line": 354,
                    "column": 6
                  },
                  "end": {
                    "line": 354,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11676,
              "end": 11685,
              "loc": {
                "start": {
                  "line": 354,
                  "column": 15
                },
                "end": {
                  "line": 354,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11686,
            "end": 11695,
            "loc": {
              "start": {
                "line": 354,
                "column": 25
              },
              "end": {
                "line": 354,
                "column": 34
              }
            },
            "name": "setValues"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11698,
          "end": 11770,
          "loc": {
            "start": {
              "line": 354,
              "column": 37
            },
            "end": {
              "line": 356,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11686,
            "end": 11695,
            "loc": {
              "start": {
                "line": 354,
                "column": 25
              },
              "end": {
                "line": 354,
                "column": 34
              }
            },
            "name": "setValues"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 11707,
              "end": 11717,
              "loc": {
                "start": {
                  "line": 354,
                  "column": 46
                },
                "end": {
                  "line": 354,
                  "column": 56
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11719,
            "end": 11770,
            "loc": {
              "start": {
                "line": 354,
                "column": 58
              },
              "end": {
                "line": 356,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 11723,
                "end": 11767,
                "loc": {
                  "start": {
                    "line": 355,
                    "column": 1
                  },
                  "end": {
                    "line": 355,
                    "column": 45
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 11730,
                  "end": 11766,
                  "loc": {
                    "start": {
                      "line": 355,
                      "column": 8
                    },
                    "end": {
                      "line": 355,
                      "column": 44
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 11730,
                    "end": 11763,
                    "loc": {
                      "start": {
                        "line": 355,
                        "column": 8
                      },
                      "end": {
                        "line": 355,
                        "column": 41
                      }
                    },
                    "object": {
                      "type": "NewExpression",
                      "start": 11730,
                      "end": 11757,
                      "loc": {
                        "start": {
                          "line": 355,
                          "column": 8
                        },
                        "end": {
                          "line": 355,
                          "column": 35
                        }
                      },
                      "callee": {
                        "type": "Identifier",
                        "start": 11734,
                        "end": 11739,
                        "loc": {
                          "start": {
                            "line": 355,
                            "column": 12
                          },
                          "end": {
                            "line": 355,
                            "column": 17
                          }
                        },
                        "name": "Tween"
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 11740,
                          "end": 11744,
                          "loc": {
                            "start": {
                              "line": 355,
                              "column": 18
                            },
                            "end": {
                              "line": 355,
                              "column": 22
                            }
                          }
                        },
                        {
                          "type": "Identifier",
                          "start": 11746,
                          "end": 11756,
                          "loc": {
                            "start": {
                              "line": 355,
                              "column": 24
                            },
                            "end": {
                              "line": 355,
                              "column": 34
                            }
                          },
                          "name": "properties"
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11758,
                      "end": 11763,
                      "loc": {
                        "start": {
                          "line": 355,
                          "column": 36
                        },
                        "end": {
                          "line": 355,
                          "column": 41
                        }
                      },
                      "name": "start"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Literal",
                      "start": 11764,
                      "end": 11765,
                      "loc": {
                        "start": {
                          "line": 355,
                          "column": 42
                        },
                        "end": {
                          "line": 355,
                          "column": 43
                        }
                      },
                      "value": 0,
                      "rawValue": 0,
                      "raw": "0"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11774,
      "end": 11985,
      "loc": {
        "start": {
          "line": 358,
          "column": 0
        },
        "end": {
          "line": 364,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11774,
        "end": 11985,
        "loc": {
          "start": {
            "line": 358,
            "column": 0
          },
          "end": {
            "line": 364,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11774,
          "end": 11803,
          "loc": {
            "start": {
              "line": 358,
              "column": 0
            },
            "end": {
              "line": 358,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11774,
            "end": 11798,
            "loc": {
              "start": {
                "line": 358,
                "column": 0
              },
              "end": {
                "line": 358,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11774,
              "end": 11788,
              "loc": {
                "start": {
                  "line": 358,
                  "column": 0
                },
                "end": {
                  "line": 358,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11774,
                "end": 11779,
                "loc": {
                  "start": {
                    "line": 358,
                    "column": 0
                  },
                  "end": {
                    "line": 358,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11780,
                "end": 11788,
                "loc": {
                  "start": {
                    "line": 358,
                    "column": 6
                  },
                  "end": {
                    "line": 358,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11789,
              "end": 11798,
              "loc": {
                "start": {
                  "line": 358,
                  "column": 15
                },
                "end": {
                  "line": 358,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11799,
            "end": 11803,
            "loc": {
              "start": {
                "line": 358,
                "column": 25
              },
              "end": {
                "line": 358,
                "column": 29
              }
            },
            "name": "root"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11806,
          "end": 11985,
          "loc": {
            "start": {
              "line": 358,
              "column": 32
            },
            "end": {
              "line": 364,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11799,
            "end": 11803,
            "loc": {
              "start": {
                "line": 358,
                "column": 25
              },
              "end": {
                "line": 358,
                "column": 29
              }
            },
            "name": "root"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 11817,
            "end": 11985,
            "loc": {
              "start": {
                "line": 358,
                "column": 43
              },
              "end": {
                "line": 364,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 11821,
                "end": 11848,
                "loc": {
                  "start": {
                    "line": 359,
                    "column": 1
                  },
                  "end": {
                    "line": 359,
                    "column": 28
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 11825,
                    "end": 11831,
                    "loc": {
                      "start": {
                        "line": 359,
                        "column": 5
                      },
                      "end": {
                        "line": 359,
                        "column": 11
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 11825,
                      "end": 11831,
                      "loc": {
                        "start": {
                          "line": 359,
                          "column": 5
                        },
                        "end": {
                          "line": 359,
                          "column": 11
                        }
                      },
                      "name": "result"
                    },
                    "init": null
                  },
                  {
                    "type": "VariableDeclarator",
                    "start": 11833,
                    "end": 11847,
                    "loc": {
                      "start": {
                        "line": 359,
                        "column": 13
                      },
                      "end": {
                        "line": 359,
                        "column": 27
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 11833,
                      "end": 11840,
                      "loc": {
                        "start": {
                          "line": 359,
                          "column": 13
                        },
                        "end": {
                          "line": 359,
                          "column": 20
                        }
                      },
                      "name": "current"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 11843,
                      "end": 11847,
                      "loc": {
                        "start": {
                          "line": 359,
                          "column": 23
                        },
                        "end": {
                          "line": 359,
                          "column": 27
                        }
                      }
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "WhileStatement",
                "start": 11851,
                "end": 11982,
                "loc": {
                  "start": {
                    "line": 360,
                    "column": 1
                  },
                  "end": {
                    "line": 363,
                    "column": 2
                  }
                },
                "test": {
                  "type": "Identifier",
                  "start": 11858,
                  "end": 11865,
                  "loc": {
                    "start": {
                      "line": 360,
                      "column": 8
                    },
                    "end": {
                      "line": 360,
                      "column": 15
                    }
                  },
                  "name": "current"
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 11867,
                  "end": 11982,
                  "loc": {
                    "start": {
                      "line": 360,
                      "column": 17
                    },
                    "end": {
                      "line": 363,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 11872,
                      "end": 11949,
                      "loc": {
                        "start": {
                          "line": 361,
                          "column": 2
                        },
                        "end": {
                          "line": 361,
                          "column": 79
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 11876,
                        "end": 11932,
                        "loc": {
                          "start": {
                            "line": 361,
                            "column": 6
                          },
                          "end": {
                            "line": 361,
                            "column": 62
                          }
                        },
                        "left": {
                          "type": "UnaryExpression",
                          "start": 11876,
                          "end": 11891,
                          "loc": {
                            "start": {
                              "line": 361,
                              "column": 6
                            },
                            "end": {
                              "line": 361,
                              "column": 21
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "MemberExpression",
                            "start": 11877,
                            "end": 11891,
                            "loc": {
                              "start": {
                                "line": 361,
                                "column": 7
                              },
                              "end": {
                                "line": 361,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 11877,
                              "end": 11884,
                              "loc": {
                                "start": {
                                  "line": 361,
                                  "column": 7
                                },
                                "end": {
                                  "line": 361,
                                  "column": 14
                                }
                              },
                              "name": "current"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11885,
                              "end": 11891,
                              "loc": {
                                "start": {
                                  "line": 361,
                                  "column": 15
                                },
                                "end": {
                                  "line": 361,
                                  "column": 21
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 11895,
                          "end": 11932,
                          "loc": {
                            "start": {
                              "line": 361,
                              "column": 25
                            },
                            "end": {
                              "line": 361,
                              "column": 62
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 11895,
                            "end": 11909,
                            "loc": {
                              "start": {
                                "line": 361,
                                "column": 25
                              },
                              "end": {
                                "line": 361,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 11895,
                              "end": 11902,
                              "loc": {
                                "start": {
                                  "line": 361,
                                  "column": 25
                                },
                                "end": {
                                  "line": 361,
                                  "column": 32
                                }
                              },
                              "name": "current"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11903,
                              "end": 11909,
                              "loc": {
                                "start": {
                                  "line": 361,
                                  "column": 33
                                },
                                "end": {
                                  "line": 361,
                                  "column": 39
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          },
                          "operator": "instanceof",
                          "right": {
                            "type": "MemberExpression",
                            "start": 11921,
                            "end": 11932,
                            "loc": {
                              "start": {
                                "line": 361,
                                "column": 51
                              },
                              "end": {
                                "line": 361,
                                "column": 62
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 11921,
                              "end": 11926,
                              "loc": {
                                "start": {
                                  "line": 361,
                                  "column": 51
                                },
                                "end": {
                                  "line": 361,
                                  "column": 56
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11927,
                              "end": 11932,
                              "loc": {
                                "start": {
                                  "line": 361,
                                  "column": 57
                                },
                                "end": {
                                  "line": 361,
                                  "column": 62
                                }
                              },
                              "name": "Scene"
                            },
                            "computed": false
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 11934,
                        "end": 11949,
                        "loc": {
                          "start": {
                            "line": 361,
                            "column": 64
                          },
                          "end": {
                            "line": 361,
                            "column": 79
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 11941,
                          "end": 11948,
                          "loc": {
                            "start": {
                              "line": 361,
                              "column": 71
                            },
                            "end": {
                              "line": 361,
                              "column": 78
                            }
                          },
                          "name": "current"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11953,
                      "end": 11978,
                      "loc": {
                        "start": {
                          "line": 362,
                          "column": 2
                        },
                        "end": {
                          "line": 362,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11953,
                        "end": 11977,
                        "loc": {
                          "start": {
                            "line": 362,
                            "column": 2
                          },
                          "end": {
                            "line": 362,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 11953,
                          "end": 11960,
                          "loc": {
                            "start": {
                              "line": 362,
                              "column": 2
                            },
                            "end": {
                              "line": 362,
                              "column": 9
                            }
                          },
                          "name": "current"
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 11963,
                          "end": 11977,
                          "loc": {
                            "start": {
                              "line": 362,
                              "column": 12
                            },
                            "end": {
                              "line": 362,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11963,
                            "end": 11970,
                            "loc": {
                              "start": {
                                "line": 362,
                                "column": 12
                              },
                              "end": {
                                "line": 362,
                                "column": 19
                              }
                            },
                            "name": "current"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11971,
                            "end": 11977,
                            "loc": {
                              "start": {
                                "line": 362,
                                "column": 20
                              },
                              "end": {
                                "line": 362,
                                "column": 26
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        }
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11989,
      "end": 12094,
      "loc": {
        "start": {
          "line": 366,
          "column": 0
        },
        "end": {
          "line": 368,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11989,
        "end": 12094,
        "loc": {
          "start": {
            "line": 366,
            "column": 0
          },
          "end": {
            "line": 368,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11989,
          "end": 12018,
          "loc": {
            "start": {
              "line": 366,
              "column": 0
            },
            "end": {
              "line": 366,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11989,
            "end": 12013,
            "loc": {
              "start": {
                "line": 366,
                "column": 0
              },
              "end": {
                "line": 366,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11989,
              "end": 12003,
              "loc": {
                "start": {
                  "line": 366,
                  "column": 0
                },
                "end": {
                  "line": 366,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11989,
                "end": 11994,
                "loc": {
                  "start": {
                    "line": 366,
                    "column": 0
                  },
                  "end": {
                    "line": 366,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11995,
                "end": 12003,
                "loc": {
                  "start": {
                    "line": 366,
                    "column": 6
                  },
                  "end": {
                    "line": 366,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12004,
              "end": 12013,
              "loc": {
                "start": {
                  "line": 366,
                  "column": 15
                },
                "end": {
                  "line": 366,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12014,
            "end": 12018,
            "loc": {
              "start": {
                "line": 366,
                "column": 25
              },
              "end": {
                "line": 366,
                "column": 29
              }
            },
            "name": "pwtl"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12021,
          "end": 12094,
          "loc": {
            "start": {
              "line": 366,
              "column": 32
            },
            "end": {
              "line": 368,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12014,
            "end": 12018,
            "loc": {
              "start": {
                "line": 366,
                "column": 25
              },
              "end": {
                "line": 366,
                "column": 29
              }
            },
            "name": "pwtl"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12030,
              "end": 12035,
              "loc": {
                "start": {
                  "line": 366,
                  "column": 41
                },
                "end": {
                  "line": 366,
                  "column": 46
                }
              },
              "name": "point"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 12037,
            "end": 12094,
            "loc": {
              "start": {
                "line": 366,
                "column": 48
              },
              "end": {
                "line": 368,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 12044,
                "end": 12091,
                "loc": {
                  "start": {
                    "line": 367,
                    "column": 4
                  },
                  "end": {
                    "line": 367,
                    "column": 51
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 12051,
                  "end": 12090,
                  "loc": {
                    "start": {
                      "line": 367,
                      "column": 11
                    },
                    "end": {
                      "line": 367,
                      "column": 50
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 12051,
                    "end": 12075,
                    "loc": {
                      "start": {
                        "line": 367,
                        "column": 11
                      },
                      "end": {
                        "line": 367,
                        "column": 35
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 12051,
                      "end": 12062,
                      "loc": {
                        "start": {
                          "line": 367,
                          "column": 11
                        },
                        "end": {
                          "line": 367,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 12051,
                        "end": 12055,
                        "loc": {
                          "start": {
                            "line": 367,
                            "column": 11
                          },
                          "end": {
                            "line": 367,
                            "column": 15
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12056,
                        "end": 12062,
                        "loc": {
                          "start": {
                            "line": 367,
                            "column": 16
                          },
                          "end": {
                            "line": 367,
                            "column": 22
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 12063,
                      "end": 12075,
                      "loc": {
                        "start": {
                          "line": 367,
                          "column": 23
                        },
                        "end": {
                          "line": 367,
                          "column": 35
                        }
                      },
                      "name": "worldToLocal"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "CallExpression",
                      "start": 12076,
                      "end": 12089,
                      "loc": {
                        "start": {
                          "line": 367,
                          "column": 36
                        },
                        "end": {
                          "line": 367,
                          "column": 49
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 12076,
                        "end": 12087,
                        "loc": {
                          "start": {
                            "line": 367,
                            "column": 36
                          },
                          "end": {
                            "line": 367,
                            "column": 47
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 12076,
                          "end": 12081,
                          "loc": {
                            "start": {
                              "line": 367,
                              "column": 36
                            },
                            "end": {
                              "line": 367,
                              "column": 41
                            }
                          },
                          "name": "point"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12082,
                          "end": 12087,
                          "loc": {
                            "start": {
                              "line": 367,
                              "column": 42
                            },
                            "end": {
                              "line": 367,
                              "column": 47
                            }
                          },
                          "name": "clone"
                        },
                        "computed": false
                      },
                      "arguments": []
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12098,
      "end": 12203,
      "loc": {
        "start": {
          "line": 370,
          "column": 0
        },
        "end": {
          "line": 372,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12098,
        "end": 12203,
        "loc": {
          "start": {
            "line": 370,
            "column": 0
          },
          "end": {
            "line": 372,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12098,
          "end": 12127,
          "loc": {
            "start": {
              "line": 370,
              "column": 0
            },
            "end": {
              "line": 370,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12098,
            "end": 12122,
            "loc": {
              "start": {
                "line": 370,
                "column": 0
              },
              "end": {
                "line": 370,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12098,
              "end": 12112,
              "loc": {
                "start": {
                  "line": 370,
                  "column": 0
                },
                "end": {
                  "line": 370,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12098,
                "end": 12103,
                "loc": {
                  "start": {
                    "line": 370,
                    "column": 0
                  },
                  "end": {
                    "line": 370,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12104,
                "end": 12112,
                "loc": {
                  "start": {
                    "line": 370,
                    "column": 6
                  },
                  "end": {
                    "line": 370,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12113,
              "end": 12122,
              "loc": {
                "start": {
                  "line": 370,
                  "column": 15
                },
                "end": {
                  "line": 370,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12123,
            "end": 12127,
            "loc": {
              "start": {
                "line": 370,
                "column": 25
              },
              "end": {
                "line": 370,
                "column": 29
              }
            },
            "name": "pltw"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12130,
          "end": 12203,
          "loc": {
            "start": {
              "line": 370,
              "column": 32
            },
            "end": {
              "line": 372,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12123,
            "end": 12127,
            "loc": {
              "start": {
                "line": 370,
                "column": 25
              },
              "end": {
                "line": 370,
                "column": 29
              }
            },
            "name": "pltw"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12139,
              "end": 12144,
              "loc": {
                "start": {
                  "line": 370,
                  "column": 41
                },
                "end": {
                  "line": 370,
                  "column": 46
                }
              },
              "name": "point"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 12146,
            "end": 12203,
            "loc": {
              "start": {
                "line": 370,
                "column": 48
              },
              "end": {
                "line": 372,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 12153,
                "end": 12200,
                "loc": {
                  "start": {
                    "line": 371,
                    "column": 4
                  },
                  "end": {
                    "line": 371,
                    "column": 51
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 12160,
                  "end": 12199,
                  "loc": {
                    "start": {
                      "line": 371,
                      "column": 11
                    },
                    "end": {
                      "line": 371,
                      "column": 50
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 12160,
                    "end": 12184,
                    "loc": {
                      "start": {
                        "line": 371,
                        "column": 11
                      },
                      "end": {
                        "line": 371,
                        "column": 35
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 12160,
                      "end": 12171,
                      "loc": {
                        "start": {
                          "line": 371,
                          "column": 11
                        },
                        "end": {
                          "line": 371,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 12160,
                        "end": 12164,
                        "loc": {
                          "start": {
                            "line": 371,
                            "column": 11
                          },
                          "end": {
                            "line": 371,
                            "column": 15
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12165,
                        "end": 12171,
                        "loc": {
                          "start": {
                            "line": 371,
                            "column": 16
                          },
                          "end": {
                            "line": 371,
                            "column": 22
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 12172,
                      "end": 12184,
                      "loc": {
                        "start": {
                          "line": 371,
                          "column": 23
                        },
                        "end": {
                          "line": 371,
                          "column": 35
                        }
                      },
                      "name": "localToWorld"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "CallExpression",
                      "start": 12185,
                      "end": 12198,
                      "loc": {
                        "start": {
                          "line": 371,
                          "column": 36
                        },
                        "end": {
                          "line": 371,
                          "column": 49
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 12185,
                        "end": 12196,
                        "loc": {
                          "start": {
                            "line": 371,
                            "column": 36
                          },
                          "end": {
                            "line": 371,
                            "column": 47
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 12185,
                          "end": 12190,
                          "loc": {
                            "start": {
                              "line": 371,
                              "column": 36
                            },
                            "end": {
                              "line": 371,
                              "column": 41
                            }
                          },
                          "name": "point"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12191,
                          "end": 12196,
                          "loc": {
                            "start": {
                              "line": 371,
                              "column": 42
                            },
                            "end": {
                              "line": 371,
                              "column": 47
                            }
                          },
                          "name": "clone"
                        },
                        "computed": false
                      },
                      "arguments": []
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12207,
      "end": 12395,
      "loc": {
        "start": {
          "line": 374,
          "column": 0
        },
        "end": {
          "line": 381,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12207,
        "end": 12395,
        "loc": {
          "start": {
            "line": 374,
            "column": 0
          },
          "end": {
            "line": 381,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12207,
          "end": 12241,
          "loc": {
            "start": {
              "line": 374,
              "column": 0
            },
            "end": {
              "line": 374,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12207,
            "end": 12231,
            "loc": {
              "start": {
                "line": 374,
                "column": 0
              },
              "end": {
                "line": 374,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12207,
              "end": 12221,
              "loc": {
                "start": {
                  "line": 374,
                  "column": 0
                },
                "end": {
                  "line": 374,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12207,
                "end": 12212,
                "loc": {
                  "start": {
                    "line": 374,
                    "column": 0
                  },
                  "end": {
                    "line": 374,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12213,
                "end": 12221,
                "loc": {
                  "start": {
                    "line": 374,
                    "column": 6
                  },
                  "end": {
                    "line": 374,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12222,
              "end": 12231,
              "loc": {
                "start": {
                  "line": 374,
                  "column": 15
                },
                "end": {
                  "line": 374,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12232,
            "end": 12241,
            "loc": {
              "start": {
                "line": 374,
                "column": 25
              },
              "end": {
                "line": 374,
                "column": 34
              }
            },
            "name": "isChildOf"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12244,
          "end": 12395,
          "loc": {
            "start": {
              "line": 374,
              "column": 37
            },
            "end": {
              "line": 381,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12232,
            "end": 12241,
            "loc": {
              "start": {
                "line": 374,
                "column": 25
              },
              "end": {
                "line": 374,
                "column": 34
              }
            },
            "name": "isChildOf"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12253,
              "end": 12259,
              "loc": {
                "start": {
                  "line": 374,
                  "column": 46
                },
                "end": {
                  "line": 374,
                  "column": 52
                }
              },
              "name": "parent"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 12261,
            "end": 12395,
            "loc": {
              "start": {
                "line": 374,
                "column": 54
              },
              "end": {
                "line": 381,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 12265,
                "end": 12284,
                "loc": {
                  "start": {
                    "line": 375,
                    "column": 1
                  },
                  "end": {
                    "line": 375,
                    "column": 20
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 12269,
                    "end": 12283,
                    "loc": {
                      "start": {
                        "line": 375,
                        "column": 5
                      },
                      "end": {
                        "line": 375,
                        "column": 19
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 12269,
                      "end": 12276,
                      "loc": {
                        "start": {
                          "line": 375,
                          "column": 5
                        },
                        "end": {
                          "line": 375,
                          "column": 12
                        }
                      },
                      "name": "current"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 12279,
                      "end": 12283,
                      "loc": {
                        "start": {
                          "line": 375,
                          "column": 15
                        },
                        "end": {
                          "line": 375,
                          "column": 19
                        }
                      }
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "WhileStatement",
                "start": 12287,
                "end": 12376,
                "loc": {
                  "start": {
                    "line": 376,
                    "column": 1
                  },
                  "end": {
                    "line": 379,
                    "column": 2
                  }
                },
                "test": {
                  "type": "Identifier",
                  "start": 12294,
                  "end": 12301,
                  "loc": {
                    "start": {
                      "line": 376,
                      "column": 8
                    },
                    "end": {
                      "line": 376,
                      "column": 15
                    }
                  },
                  "name": "current"
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 12303,
                  "end": 12376,
                  "loc": {
                    "start": {
                      "line": 376,
                      "column": 17
                    },
                    "end": {
                      "line": 379,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 12308,
                      "end": 12343,
                      "loc": {
                        "start": {
                          "line": 377,
                          "column": 2
                        },
                        "end": {
                          "line": 377,
                          "column": 37
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 12312,
                        "end": 12329,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 6
                          },
                          "end": {
                            "line": 377,
                            "column": 23
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 12312,
                          "end": 12319,
                          "loc": {
                            "start": {
                              "line": 377,
                              "column": 6
                            },
                            "end": {
                              "line": 377,
                              "column": 13
                            }
                          },
                          "name": "current"
                        },
                        "operator": "==",
                        "right": {
                          "type": "Identifier",
                          "start": 12323,
                          "end": 12329,
                          "loc": {
                            "start": {
                              "line": 377,
                              "column": 17
                            },
                            "end": {
                              "line": 377,
                              "column": 23
                            }
                          },
                          "name": "parent"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 12331,
                        "end": 12343,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 25
                          },
                          "end": {
                            "line": 377,
                            "column": 37
                          }
                        },
                        "argument": {
                          "type": "Literal",
                          "start": 12338,
                          "end": 12342,
                          "loc": {
                            "start": {
                              "line": 377,
                              "column": 32
                            },
                            "end": {
                              "line": 377,
                              "column": 36
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12347,
                      "end": 12372,
                      "loc": {
                        "start": {
                          "line": 378,
                          "column": 2
                        },
                        "end": {
                          "line": 378,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 12347,
                        "end": 12371,
                        "loc": {
                          "start": {
                            "line": 378,
                            "column": 2
                          },
                          "end": {
                            "line": 378,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 12347,
                          "end": 12354,
                          "loc": {
                            "start": {
                              "line": 378,
                              "column": 2
                            },
                            "end": {
                              "line": 378,
                              "column": 9
                            }
                          },
                          "name": "current"
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 12357,
                          "end": 12371,
                          "loc": {
                            "start": {
                              "line": 378,
                              "column": 12
                            },
                            "end": {
                              "line": 378,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12357,
                            "end": 12364,
                            "loc": {
                              "start": {
                                "line": 378,
                                "column": 12
                              },
                              "end": {
                                "line": 378,
                                "column": 19
                              }
                            },
                            "name": "current"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12365,
                            "end": 12371,
                            "loc": {
                              "start": {
                                "line": 378,
                                "column": 20
                              },
                              "end": {
                                "line": 378,
                                "column": 26
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        }
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 12379,
                "end": 12392,
                "loc": {
                  "start": {
                    "line": 380,
                    "column": 1
                  },
                  "end": {
                    "line": 380,
                    "column": 14
                  }
                },
                "argument": {
                  "type": "Literal",
                  "start": 12386,
                  "end": 12391,
                  "loc": {
                    "start": {
                      "line": 380,
                      "column": 8
                    },
                    "end": {
                      "line": 380,
                      "column": 13
                    }
                  },
                  "value": false,
                  "rawValue": false,
                  "raw": "false"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12399,
      "end": 12716,
      "loc": {
        "start": {
          "line": 383,
          "column": 0
        },
        "end": {
          "line": 391,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12399,
        "end": 12716,
        "loc": {
          "start": {
            "line": 383,
            "column": 0
          },
          "end": {
            "line": 391,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12399,
          "end": 12433,
          "loc": {
            "start": {
              "line": 383,
              "column": 0
            },
            "end": {
              "line": 383,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12399,
            "end": 12423,
            "loc": {
              "start": {
                "line": 383,
                "column": 0
              },
              "end": {
                "line": 383,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12399,
              "end": 12413,
              "loc": {
                "start": {
                  "line": 383,
                  "column": 0
                },
                "end": {
                  "line": 383,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12399,
                "end": 12404,
                "loc": {
                  "start": {
                    "line": 383,
                    "column": 0
                  },
                  "end": {
                    "line": 383,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12405,
                "end": 12413,
                "loc": {
                  "start": {
                    "line": 383,
                    "column": 6
                  },
                  "end": {
                    "line": 383,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12414,
              "end": 12423,
              "loc": {
                "start": {
                  "line": 383,
                  "column": 15
                },
                "end": {
                  "line": 383,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12424,
            "end": 12433,
            "loc": {
              "start": {
                "line": 383,
                "column": 25
              },
              "end": {
                "line": 383,
                "column": 34
              }
            },
            "name": "isVisible"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12436,
          "end": 12716,
          "loc": {
            "start": {
              "line": 383,
              "column": 37
            },
            "end": {
              "line": 391,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12424,
            "end": 12433,
            "loc": {
              "start": {
                "line": 383,
                "column": 25
              },
              "end": {
                "line": 383,
                "column": 34
              }
            },
            "name": "isVisible"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 12447,
            "end": 12716,
            "loc": {
              "start": {
                "line": 383,
                "column": 48
              },
              "end": {
                "line": 391,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 12451,
                "end": 12548,
                "loc": {
                  "start": {
                    "line": 384,
                    "column": 1
                  },
                  "end": {
                    "line": 385,
                    "column": 75
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 12455,
                  "end": 12533,
                  "loc": {
                    "start": {
                      "line": 384,
                      "column": 5
                    },
                    "end": {
                      "line": 385,
                      "column": 60
                    }
                  },
                  "left": {
                    "type": "UnaryExpression",
                    "start": 12455,
                    "end": 12468,
                    "loc": {
                      "start": {
                        "line": 384,
                        "column": 5
                      },
                      "end": {
                        "line": 384,
                        "column": 18
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 12456,
                      "end": 12468,
                      "loc": {
                        "start": {
                          "line": 384,
                          "column": 6
                        },
                        "end": {
                          "line": 384,
                          "column": 18
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 12456,
                        "end": 12460,
                        "loc": {
                          "start": {
                            "line": 384,
                            "column": 6
                          },
                          "end": {
                            "line": 384,
                            "column": 10
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12461,
                        "end": 12468,
                        "loc": {
                          "start": {
                            "line": 384,
                            "column": 11
                          },
                          "end": {
                            "line": 384,
                            "column": 18
                          }
                        },
                        "name": "visible"
                      },
                      "computed": false
                    }
                  },
                  "operator": "||",
                  "right": {
                    "type": "LogicalExpression",
                    "start": 12476,
                    "end": 12532,
                    "loc": {
                      "start": {
                        "line": 385,
                        "column": 3
                      },
                      "end": {
                        "line": 385,
                        "column": 59
                      }
                    },
                    "left": {
                      "type": "BinaryExpression",
                      "start": 12476,
                      "end": 12502,
                      "loc": {
                        "start": {
                          "line": 385,
                          "column": 3
                        },
                        "end": {
                          "line": 385,
                          "column": 29
                        }
                      },
                      "left": {
                        "type": "ThisExpression",
                        "start": 12476,
                        "end": 12480,
                        "loc": {
                          "start": {
                            "line": 385,
                            "column": 3
                          },
                          "end": {
                            "line": 385,
                            "column": 7
                          }
                        }
                      },
                      "operator": "instanceof",
                      "right": {
                        "type": "MemberExpression",
                        "start": 12492,
                        "end": 12502,
                        "loc": {
                          "start": {
                            "line": 385,
                            "column": 19
                          },
                          "end": {
                            "line": 385,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 12492,
                          "end": 12497,
                          "loc": {
                            "start": {
                              "line": 385,
                              "column": 19
                            },
                            "end": {
                              "line": 385,
                              "column": 24
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12498,
                          "end": 12502,
                          "loc": {
                            "start": {
                              "line": 385,
                              "column": 25
                            },
                            "end": {
                              "line": 385,
                              "column": 29
                            }
                          },
                          "name": "Mesh"
                        },
                        "computed": false
                      }
                    },
                    "operator": "&&",
                    "right": {
                      "type": "BinaryExpression",
                      "start": 12506,
                      "end": 12532,
                      "loc": {
                        "start": {
                          "line": 385,
                          "column": 33
                        },
                        "end": {
                          "line": 385,
                          "column": 59
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 12506,
                        "end": 12527,
                        "loc": {
                          "start": {
                            "line": 385,
                            "column": 33
                          },
                          "end": {
                            "line": 385,
                            "column": 54
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 12506,
                          "end": 12519,
                          "loc": {
                            "start": {
                              "line": 385,
                              "column": 33
                            },
                            "end": {
                              "line": 385,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12506,
                            "end": 12510,
                            "loc": {
                              "start": {
                                "line": 385,
                                "column": 33
                              },
                              "end": {
                                "line": 385,
                                "column": 37
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12511,
                            "end": 12519,
                            "loc": {
                              "start": {
                                "line": 385,
                                "column": 38
                              },
                              "end": {
                                "line": 385,
                                "column": 46
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12520,
                          "end": 12527,
                          "loc": {
                            "start": {
                              "line": 385,
                              "column": 47
                            },
                            "end": {
                              "line": 385,
                              "column": 54
                            }
                          },
                          "name": "opacity"
                        },
                        "computed": false
                      },
                      "operator": "==",
                      "right": {
                        "type": "Literal",
                        "start": 12531,
                        "end": 12532,
                        "loc": {
                          "start": {
                            "line": 385,
                            "column": 58
                          },
                          "end": {
                            "line": 385,
                            "column": 59
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    },
                    "parenthesizedExpression": true
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 12535,
                  "end": 12548,
                  "loc": {
                    "start": {
                      "line": 385,
                      "column": 62
                    },
                    "end": {
                      "line": 385,
                      "column": 75
                    }
                  },
                  "argument": {
                    "type": "Literal",
                    "start": 12542,
                    "end": 12547,
                    "loc": {
                      "start": {
                        "line": 385,
                        "column": 69
                      },
                      "end": {
                        "line": 385,
                        "column": 74
                      }
                    },
                    "value": false,
                    "rawValue": false,
                    "raw": "false"
                  }
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 12551,
                "end": 12697,
                "loc": {
                  "start": {
                    "line": 386,
                    "column": 1
                  },
                  "end": {
                    "line": 389,
                    "column": 33
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 12555,
                  "end": 12612,
                  "loc": {
                    "start": {
                      "line": 386,
                      "column": 5
                    },
                    "end": {
                      "line": 386,
                      "column": 62
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 12555,
                    "end": 12574,
                    "loc": {
                      "start": {
                        "line": 386,
                        "column": 5
                      },
                      "end": {
                        "line": 386,
                        "column": 24
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 12555,
                      "end": 12566,
                      "loc": {
                        "start": {
                          "line": 386,
                          "column": 5
                        },
                        "end": {
                          "line": 386,
                          "column": 16
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 12555,
                        "end": 12559,
                        "loc": {
                          "start": {
                            "line": 386,
                            "column": 5
                          },
                          "end": {
                            "line": 386,
                            "column": 9
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12560,
                        "end": 12566,
                        "loc": {
                          "start": {
                            "line": 386,
                            "column": 10
                          },
                          "end": {
                            "line": 386,
                            "column": 16
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "operator": "==",
                    "right": {
                      "type": "Literal",
                      "start": 12570,
                      "end": 12574,
                      "loc": {
                        "start": {
                          "line": 386,
                          "column": 20
                        },
                        "end": {
                          "line": 386,
                          "column": 24
                        }
                      },
                      "value": null,
                      "rawValue": null,
                      "raw": "null"
                    }
                  },
                  "operator": "||",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 12578,
                    "end": 12612,
                    "loc": {
                      "start": {
                        "line": 386,
                        "column": 28
                      },
                      "end": {
                        "line": 386,
                        "column": 62
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 12578,
                      "end": 12589,
                      "loc": {
                        "start": {
                          "line": 386,
                          "column": 28
                        },
                        "end": {
                          "line": 386,
                          "column": 39
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 12578,
                        "end": 12582,
                        "loc": {
                          "start": {
                            "line": 386,
                            "column": 28
                          },
                          "end": {
                            "line": 386,
                            "column": 32
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12583,
                        "end": 12589,
                        "loc": {
                          "start": {
                            "line": 386,
                            "column": 33
                          },
                          "end": {
                            "line": 386,
                            "column": 39
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "MemberExpression",
                      "start": 12601,
                      "end": 12612,
                      "loc": {
                        "start": {
                          "line": 386,
                          "column": 51
                        },
                        "end": {
                          "line": 386,
                          "column": 62
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 12601,
                        "end": 12606,
                        "loc": {
                          "start": {
                            "line": 386,
                            "column": 51
                          },
                          "end": {
                            "line": 386,
                            "column": 56
                          }
                        },
                        "name": "THREE"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12607,
                        "end": 12612,
                        "loc": {
                          "start": {
                            "line": 386,
                            "column": 57
                          },
                          "end": {
                            "line": 386,
                            "column": 62
                          }
                        },
                        "name": "Scene"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 12617,
                  "end": 12637,
                  "loc": {
                    "start": {
                      "line": 387,
                      "column": 2
                    },
                    "end": {
                      "line": 387,
                      "column": 22
                    }
                  },
                  "argument": {
                    "type": "MemberExpression",
                    "start": 12624,
                    "end": 12636,
                    "loc": {
                      "start": {
                        "line": 387,
                        "column": 9
                      },
                      "end": {
                        "line": 387,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 12624,
                      "end": 12628,
                      "loc": {
                        "start": {
                          "line": 387,
                          "column": 9
                        },
                        "end": {
                          "line": 387,
                          "column": 13
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 12629,
                      "end": 12636,
                      "loc": {
                        "start": {
                          "line": 387,
                          "column": 14
                        },
                        "end": {
                          "line": 387,
                          "column": 21
                        }
                      },
                      "name": "visible"
                    },
                    "computed": false
                  }
                },
                "alternate": {
                  "type": "IfStatement",
                  "start": 12645,
                  "end": 12697,
                  "loc": {
                    "start": {
                      "line": 388,
                      "column": 6
                    },
                    "end": {
                      "line": 389,
                      "column": 33
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 12649,
                    "end": 12661,
                    "loc": {
                      "start": {
                        "line": 388,
                        "column": 10
                      },
                      "end": {
                        "line": 388,
                        "column": 22
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 12649,
                      "end": 12653,
                      "loc": {
                        "start": {
                          "line": 388,
                          "column": 10
                        },
                        "end": {
                          "line": 388,
                          "column": 14
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 12654,
                      "end": 12661,
                      "loc": {
                        "start": {
                          "line": 388,
                          "column": 15
                        },
                        "end": {
                          "line": 388,
                          "column": 22
                        }
                      },
                      "name": "visible"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "ReturnStatement",
                    "start": 12666,
                    "end": 12697,
                    "loc": {
                      "start": {
                        "line": 389,
                        "column": 2
                      },
                      "end": {
                        "line": 389,
                        "column": 33
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 12673,
                      "end": 12696,
                      "loc": {
                        "start": {
                          "line": 389,
                          "column": 9
                        },
                        "end": {
                          "line": 389,
                          "column": 32
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 12673,
                        "end": 12694,
                        "loc": {
                          "start": {
                            "line": 389,
                            "column": 9
                          },
                          "end": {
                            "line": 389,
                            "column": 30
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 12673,
                          "end": 12684,
                          "loc": {
                            "start": {
                              "line": 389,
                              "column": 9
                            },
                            "end": {
                              "line": 389,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12673,
                            "end": 12677,
                            "loc": {
                              "start": {
                                "line": 389,
                                "column": 9
                              },
                              "end": {
                                "line": 389,
                                "column": 13
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12678,
                            "end": 12684,
                            "loc": {
                              "start": {
                                "line": 389,
                                "column": 14
                              },
                              "end": {
                                "line": 389,
                                "column": 20
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12685,
                          "end": 12694,
                          "loc": {
                            "start": {
                              "line": 389,
                              "column": 21
                            },
                            "end": {
                              "line": 389,
                              "column": 30
                            }
                          },
                          "name": "isVisible"
                        },
                        "computed": false
                      },
                      "arguments": []
                    }
                  },
                  "alternate": null
                }
              },
              {
                "type": "ReturnStatement",
                "start": 12700,
                "end": 12713,
                "loc": {
                  "start": {
                    "line": 390,
                    "column": 1
                  },
                  "end": {
                    "line": 390,
                    "column": 14
                  }
                },
                "argument": {
                  "type": "Literal",
                  "start": 12707,
                  "end": 12712,
                  "loc": {
                    "start": {
                      "line": 390,
                      "column": 8
                    },
                    "end": {
                      "line": 390,
                      "column": 13
                    }
                  },
                  "value": false,
                  "rawValue": false,
                  "raw": "false"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12720,
      "end": 12947,
      "loc": {
        "start": {
          "line": 393,
          "column": 0
        },
        "end": {
          "line": 401,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12720,
        "end": 12947,
        "loc": {
          "start": {
            "line": 393,
            "column": 0
          },
          "end": {
            "line": 401,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12720,
          "end": 12749,
          "loc": {
            "start": {
              "line": 393,
              "column": 0
            },
            "end": {
              "line": 393,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12720,
            "end": 12744,
            "loc": {
              "start": {
                "line": 393,
                "column": 0
              },
              "end": {
                "line": 393,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12720,
              "end": 12734,
              "loc": {
                "start": {
                  "line": 393,
                  "column": 0
                },
                "end": {
                  "line": 393,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12720,
                "end": 12725,
                "loc": {
                  "start": {
                    "line": 393,
                    "column": 0
                  },
                  "end": {
                    "line": 393,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12726,
                "end": 12734,
                "loc": {
                  "start": {
                    "line": 393,
                    "column": 6
                  },
                  "end": {
                    "line": 393,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12735,
              "end": 12744,
              "loc": {
                "start": {
                  "line": 393,
                  "column": 15
                },
                "end": {
                  "line": 393,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12745,
            "end": 12749,
            "loc": {
              "start": {
                "line": 393,
                "column": 25
              },
              "end": {
                "line": 393,
                "column": 29
              }
            },
            "name": "find"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12752,
          "end": 12947,
          "loc": {
            "start": {
              "line": 393,
              "column": 32
            },
            "end": {
              "line": 401,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12745,
            "end": 12749,
            "loc": {
              "start": {
                "line": 393,
                "column": 25
              },
              "end": {
                "line": 393,
                "column": 29
              }
            },
            "name": "find"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12761,
              "end": 12770,
              "loc": {
                "start": {
                  "line": 393,
                  "column": 41
                },
                "end": {
                  "line": 393,
                  "column": 50
                }
              },
              "name": "condition"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 12772,
            "end": 12947,
            "loc": {
              "start": {
                "line": 393,
                "column": 52
              },
              "end": {
                "line": 401,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 12776,
                "end": 12818,
                "loc": {
                  "start": {
                    "line": 394,
                    "column": 1
                  },
                  "end": {
                    "line": 395,
                    "column": 20
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 12780,
                  "end": 12795,
                  "loc": {
                    "start": {
                      "line": 394,
                      "column": 5
                    },
                    "end": {
                      "line": 394,
                      "column": 20
                    }
                  },
                  "callee": {
                    "type": "Identifier",
                    "start": 12780,
                    "end": 12789,
                    "loc": {
                      "start": {
                        "line": 394,
                        "column": 5
                      },
                      "end": {
                        "line": 394,
                        "column": 14
                      }
                    },
                    "name": "condition"
                  },
                  "arguments": [
                    {
                      "type": "ThisExpression",
                      "start": 12790,
                      "end": 12794,
                      "loc": {
                        "start": {
                          "line": 394,
                          "column": 15
                        },
                        "end": {
                          "line": 394,
                          "column": 19
                        }
                      }
                    }
                  ]
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 12806,
                  "end": 12818,
                  "loc": {
                    "start": {
                      "line": 395,
                      "column": 8
                    },
                    "end": {
                      "line": 395,
                      "column": 20
                    }
                  },
                  "argument": {
                    "type": "ThisExpression",
                    "start": 12813,
                    "end": 12817,
                    "loc": {
                      "start": {
                        "line": 395,
                        "column": 15
                      },
                      "end": {
                        "line": 395,
                        "column": 19
                      }
                    }
                  }
                },
                "alternate": null
              },
              {
                "type": "ForOfStatement",
                "start": 12821,
                "end": 12944,
                "loc": {
                  "start": {
                    "line": 396,
                    "column": 1
                  },
                  "end": {
                    "line": 400,
                    "column": 5
                  }
                },
                "left": {
                  "type": "VariableDeclaration",
                  "start": 12826,
                  "end": 12835,
                  "loc": {
                    "start": {
                      "line": 396,
                      "column": 6
                    },
                    "end": {
                      "line": 396,
                      "column": 15
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 12830,
                      "end": 12835,
                      "loc": {
                        "start": {
                          "line": 396,
                          "column": 10
                        },
                        "end": {
                          "line": 396,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 12830,
                        "end": 12835,
                        "loc": {
                          "start": {
                            "line": 396,
                            "column": 10
                          },
                          "end": {
                            "line": 396,
                            "column": 15
                          }
                        },
                        "name": "child"
                      },
                      "init": null
                    }
                  ],
                  "kind": "let"
                },
                "right": {
                  "type": "MemberExpression",
                  "start": 12839,
                  "end": 12852,
                  "loc": {
                    "start": {
                      "line": 396,
                      "column": 19
                    },
                    "end": {
                      "line": 396,
                      "column": 32
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 12839,
                    "end": 12843,
                    "loc": {
                      "start": {
                        "line": 396,
                        "column": 19
                      },
                      "end": {
                        "line": 396,
                        "column": 23
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 12844,
                    "end": 12852,
                    "loc": {
                      "start": {
                        "line": 396,
                        "column": 24
                      },
                      "end": {
                        "line": 396,
                        "column": 32
                      }
                    },
                    "name": "children"
                  },
                  "computed": false
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 12854,
                  "end": 12944,
                  "loc": {
                    "start": {
                      "line": 396,
                      "column": 34
                    },
                    "end": {
                      "line": 400,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 12865,
                      "end": 12898,
                      "loc": {
                        "start": {
                          "line": 397,
                          "column": 8
                        },
                        "end": {
                          "line": 397,
                          "column": 41
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12869,
                          "end": 12897,
                          "loc": {
                            "start": {
                              "line": 397,
                              "column": 12
                            },
                            "end": {
                              "line": 397,
                              "column": 40
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12869,
                            "end": 12873,
                            "loc": {
                              "start": {
                                "line": 397,
                                "column": 12
                              },
                              "end": {
                                "line": 397,
                                "column": 16
                              }
                            },
                            "name": "test"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 12876,
                            "end": 12897,
                            "loc": {
                              "start": {
                                "line": 397,
                                "column": 19
                              },
                              "end": {
                                "line": 397,
                                "column": 40
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12876,
                              "end": 12886,
                              "loc": {
                                "start": {
                                  "line": 397,
                                  "column": 19
                                },
                                "end": {
                                  "line": 397,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12876,
                                "end": 12881,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 24
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12882,
                                "end": 12886,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 29
                                  }
                                },
                                "name": "find"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 12887,
                                "end": 12896,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 39
                                  }
                                },
                                "name": "condition"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 12902,
                      "end": 12937,
                      "loc": {
                        "start": {
                          "line": 398,
                          "column": 2
                        },
                        "end": {
                          "line": 399,
                          "column": 24
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 12906,
                        "end": 12910,
                        "loc": {
                          "start": {
                            "line": 398,
                            "column": 6
                          },
                          "end": {
                            "line": 398,
                            "column": 10
                          }
                        },
                        "name": "test"
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 12925,
                        "end": 12937,
                        "loc": {
                          "start": {
                            "line": 399,
                            "column": 12
                          },
                          "end": {
                            "line": 399,
                            "column": 24
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 12932,
                          "end": 12936,
                          "loc": {
                            "start": {
                              "line": 399,
                              "column": 19
                            },
                            "end": {
                              "line": 399,
                              "column": 23
                            }
                          },
                          "name": "test"
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12951,
      "end": 13185,
      "loc": {
        "start": {
          "line": 403,
          "column": 0
        },
        "end": {
          "line": 410,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12951,
        "end": 13185,
        "loc": {
          "start": {
            "line": 403,
            "column": 0
          },
          "end": {
            "line": 410,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12951,
          "end": 12992,
          "loc": {
            "start": {
              "line": 403,
              "column": 0
            },
            "end": {
              "line": 403,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12951,
            "end": 12975,
            "loc": {
              "start": {
                "line": 403,
                "column": 0
              },
              "end": {
                "line": 403,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12951,
              "end": 12965,
              "loc": {
                "start": {
                  "line": 403,
                  "column": 0
                },
                "end": {
                  "line": 403,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12951,
                "end": 12956,
                "loc": {
                  "start": {
                    "line": 403,
                    "column": 0
                  },
                  "end": {
                    "line": 403,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12957,
                "end": 12965,
                "loc": {
                  "start": {
                    "line": 403,
                    "column": 6
                  },
                  "end": {
                    "line": 403,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12966,
              "end": 12975,
              "loc": {
                "start": {
                  "line": 403,
                  "column": 15
                },
                "end": {
                  "line": 403,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12976,
            "end": 12992,
            "loc": {
              "start": {
                "line": 403,
                "column": 25
              },
              "end": {
                "line": 403,
                "column": 41
              }
            },
            "name": "getObjectByMatch"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12995,
          "end": 13185,
          "loc": {
            "start": {
              "line": 403,
              "column": 44
            },
            "end": {
              "line": 410,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12976,
            "end": 12992,
            "loc": {
              "start": {
                "line": 403,
                "column": 25
              },
              "end": {
                "line": 403,
                "column": 41
              }
            },
            "name": "getObjectByMatch"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 13004,
              "end": 13008,
              "loc": {
                "start": {
                  "line": 403,
                  "column": 53
                },
                "end": {
                  "line": 403,
                  "column": 57
                }
              },
              "name": "name"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13010,
            "end": 13185,
            "loc": {
              "start": {
                "line": 403,
                "column": 59
              },
              "end": {
                "line": 410,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ForStatement",
                "start": 13014,
                "end": 13162,
                "loc": {
                  "start": {
                    "line": 404,
                    "column": 1
                  },
                  "end": {
                    "line": 408,
                    "column": 2
                  }
                },
                "init": {
                  "type": "VariableDeclaration",
                  "start": 13019,
                  "end": 13054,
                  "loc": {
                    "start": {
                      "line": 404,
                      "column": 6
                    },
                    "end": {
                      "line": 404,
                      "column": 41
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 13023,
                      "end": 13028,
                      "loc": {
                        "start": {
                          "line": 404,
                          "column": 10
                        },
                        "end": {
                          "line": 404,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 13023,
                        "end": 13024,
                        "loc": {
                          "start": {
                            "line": 404,
                            "column": 10
                          },
                          "end": {
                            "line": 404,
                            "column": 11
                          }
                        },
                        "name": "i"
                      },
                      "init": {
                        "type": "Literal",
                        "start": 13027,
                        "end": 13028,
                        "loc": {
                          "start": {
                            "line": 404,
                            "column": 14
                          },
                          "end": {
                            "line": 404,
                            "column": 15
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    },
                    {
                      "type": "VariableDeclarator",
                      "start": 13030,
                      "end": 13054,
                      "loc": {
                        "start": {
                          "line": 404,
                          "column": 17
                        },
                        "end": {
                          "line": 404,
                          "column": 41
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 13030,
                        "end": 13031,
                        "loc": {
                          "start": {
                            "line": 404,
                            "column": 17
                          },
                          "end": {
                            "line": 404,
                            "column": 18
                          }
                        },
                        "name": "l"
                      },
                      "init": {
                        "type": "MemberExpression",
                        "start": 13034,
                        "end": 13054,
                        "loc": {
                          "start": {
                            "line": 404,
                            "column": 21
                          },
                          "end": {
                            "line": 404,
                            "column": 41
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 13034,
                          "end": 13047,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 21
                            },
                            "end": {
                              "line": 404,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13034,
                            "end": 13038,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 21
                              },
                              "end": {
                                "line": 404,
                                "column": 25
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13039,
                            "end": 13047,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 26
                              },
                              "end": {
                                "line": 404,
                                "column": 34
                              }
                            },
                            "name": "children"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13048,
                          "end": 13054,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 35
                            },
                            "end": {
                              "line": 404,
                              "column": 41
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "kind": "var"
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 13056,
                  "end": 13061,
                  "loc": {
                    "start": {
                      "line": 404,
                      "column": 43
                    },
                    "end": {
                      "line": 404,
                      "column": 48
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 13056,
                    "end": 13057,
                    "loc": {
                      "start": {
                        "line": 404,
                        "column": 43
                      },
                      "end": {
                        "line": 404,
                        "column": 44
                      }
                    },
                    "name": "i"
                  },
                  "operator": "<",
                  "right": {
                    "type": "Identifier",
                    "start": 13060,
                    "end": 13061,
                    "loc": {
                      "start": {
                        "line": 404,
                        "column": 47
                      },
                      "end": {
                        "line": 404,
                        "column": 48
                      }
                    },
                    "name": "l"
                  }
                },
                "update": {
                  "type": "UpdateExpression",
                  "start": 13063,
                  "end": 13066,
                  "loc": {
                    "start": {
                      "line": 404,
                      "column": 50
                    },
                    "end": {
                      "line": 404,
                      "column": 53
                    }
                  },
                  "operator": "++",
                  "prefix": false,
                  "argument": {
                    "type": "Identifier",
                    "start": 13063,
                    "end": 13064,
                    "loc": {
                      "start": {
                        "line": 404,
                        "column": 50
                      },
                      "end": {
                        "line": 404,
                        "column": 51
                      }
                    },
                    "name": "i"
                  }
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 13068,
                  "end": 13162,
                  "loc": {
                    "start": {
                      "line": 404,
                      "column": 55
                    },
                    "end": {
                      "line": 408,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 13073,
                      "end": 13102,
                      "loc": {
                        "start": {
                          "line": 405,
                          "column": 2
                        },
                        "end": {
                          "line": 405,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13077,
                          "end": 13101,
                          "loc": {
                            "start": {
                              "line": 405,
                              "column": 6
                            },
                            "end": {
                              "line": 405,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13077,
                            "end": 13082,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 6
                              },
                              "end": {
                                "line": 405,
                                "column": 11
                              }
                            },
                            "name": "child"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 13085,
                            "end": 13101,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 14
                              },
                              "end": {
                                "line": 405,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 13085,
                              "end": 13098,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 14
                                },
                                "end": {
                                  "line": 405,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 13085,
                                "end": 13089,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13090,
                                "end": 13098,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 27
                                  }
                                },
                                "name": "children"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13099,
                              "end": 13100,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 28
                                },
                                "end": {
                                  "line": 405,
                                  "column": 29
                                }
                              },
                              "name": "i"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 13106,
                      "end": 13158,
                      "loc": {
                        "start": {
                          "line": 406,
                          "column": 2
                        },
                        "end": {
                          "line": 407,
                          "column": 16
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 13110,
                        "end": 13139,
                        "loc": {
                          "start": {
                            "line": 406,
                            "column": 6
                          },
                          "end": {
                            "line": 406,
                            "column": 35
                          }
                        },
                        "left": {
                          "type": "CallExpression",
                          "start": 13110,
                          "end": 13134,
                          "loc": {
                            "start": {
                              "line": 406,
                              "column": 6
                            },
                            "end": {
                              "line": 406,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 13110,
                            "end": 13128,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 6
                              },
                              "end": {
                                "line": 406,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 13110,
                              "end": 13120,
                              "loc": {
                                "start": {
                                  "line": 406,
                                  "column": 6
                                },
                                "end": {
                                  "line": 406,
                                  "column": 16
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13110,
                                "end": 13115,
                                "loc": {
                                  "start": {
                                    "line": 406,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 406,
                                    "column": 11
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13116,
                                "end": 13120,
                                "loc": {
                                  "start": {
                                    "line": 406,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 406,
                                    "column": 16
                                  }
                                },
                                "name": "name"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13121,
                              "end": 13128,
                              "loc": {
                                "start": {
                                  "line": 406,
                                  "column": 17
                                },
                                "end": {
                                  "line": 406,
                                  "column": 24
                                }
                              },
                              "name": "indexOf"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 13129,
                              "end": 13133,
                              "loc": {
                                "start": {
                                  "line": 406,
                                  "column": 25
                                },
                                "end": {
                                  "line": 406,
                                  "column": 29
                                }
                              },
                              "name": "name"
                            }
                          ]
                        },
                        "operator": ">",
                        "right": {
                          "type": "UnaryExpression",
                          "start": 13137,
                          "end": 13139,
                          "loc": {
                            "start": {
                              "line": 406,
                              "column": 33
                            },
                            "end": {
                              "line": 406,
                              "column": 35
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 13138,
                            "end": 13139,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 34
                              },
                              "end": {
                                "line": 406,
                                "column": 35
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 13145,
                        "end": 13158,
                        "loc": {
                          "start": {
                            "line": 407,
                            "column": 3
                          },
                          "end": {
                            "line": 407,
                            "column": 16
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 13152,
                          "end": 13157,
                          "loc": {
                            "start": {
                              "line": 407,
                              "column": 10
                            },
                            "end": {
                              "line": 407,
                              "column": 15
                            }
                          },
                          "name": "child"
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 13165,
                "end": 13182,
                "loc": {
                  "start": {
                    "line": 409,
                    "column": 1
                  },
                  "end": {
                    "line": 409,
                    "column": 18
                  }
                },
                "argument": {
                  "type": "Identifier",
                  "start": 13172,
                  "end": 13181,
                  "loc": {
                    "start": {
                      "line": 409,
                      "column": 8
                    },
                    "end": {
                      "line": 409,
                      "column": 17
                    }
                  },
                  "name": "undefined"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13189,
      "end": 13529,
      "loc": {
        "start": {
          "line": 412,
          "column": 0
        },
        "end": {
          "line": 422,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13189,
        "end": 13529,
        "loc": {
          "start": {
            "line": 412,
            "column": 0
          },
          "end": {
            "line": 422,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13189,
          "end": 13231,
          "loc": {
            "start": {
              "line": 412,
              "column": 0
            },
            "end": {
              "line": 412,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13189,
            "end": 13213,
            "loc": {
              "start": {
                "line": 412,
                "column": 0
              },
              "end": {
                "line": 412,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13189,
              "end": 13203,
              "loc": {
                "start": {
                  "line": 412,
                  "column": 0
                },
                "end": {
                  "line": 412,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13189,
                "end": 13194,
                "loc": {
                  "start": {
                    "line": 412,
                    "column": 0
                  },
                  "end": {
                    "line": 412,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13195,
                "end": 13203,
                "loc": {
                  "start": {
                    "line": 412,
                    "column": 6
                  },
                  "end": {
                    "line": 412,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13204,
              "end": 13213,
              "loc": {
                "start": {
                  "line": 412,
                  "column": 15
                },
                "end": {
                  "line": 412,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13214,
            "end": 13231,
            "loc": {
              "start": {
                "line": 412,
                "column": 25
              },
              "end": {
                "line": 412,
                "column": 42
              }
            },
            "name": "getObjectByUserId"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13234,
          "end": 13529,
          "loc": {
            "start": {
              "line": 412,
              "column": 45
            },
            "end": {
              "line": 422,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13214,
            "end": 13231,
            "loc": {
              "start": {
                "line": 412,
                "column": 25
              },
              "end": {
                "line": 412,
                "column": 42
              }
            },
            "name": "getObjectByUserId"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 13243,
              "end": 13245,
              "loc": {
                "start": {
                  "line": 412,
                  "column": 54
                },
                "end": {
                  "line": 412,
                  "column": 56
                }
              },
              "name": "id"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13247,
            "end": 13529,
            "loc": {
              "start": {
                "line": 412,
                "column": 58
              },
              "end": {
                "line": 422,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 13251,
                "end": 13311,
                "loc": {
                  "start": {
                    "line": 413,
                    "column": 1
                  },
                  "end": {
                    "line": 413,
                    "column": 61
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 13255,
                  "end": 13297,
                  "loc": {
                    "start": {
                      "line": 413,
                      "column": 5
                    },
                    "end": {
                      "line": 413,
                      "column": 47
                    }
                  },
                  "left": {
                    "type": "UnaryExpression",
                    "start": 13255,
                    "end": 13270,
                    "loc": {
                      "start": {
                        "line": 413,
                        "column": 5
                      },
                      "end": {
                        "line": 413,
                        "column": 20
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 13256,
                      "end": 13270,
                      "loc": {
                        "start": {
                          "line": 413,
                          "column": 6
                        },
                        "end": {
                          "line": 413,
                          "column": 20
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 13257,
                        "end": 13270,
                        "loc": {
                          "start": {
                            "line": 413,
                            "column": 7
                          },
                          "end": {
                            "line": 413,
                            "column": 20
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 13257,
                          "end": 13261,
                          "loc": {
                            "start": {
                              "line": 413,
                              "column": 7
                            },
                            "end": {
                              "line": 413,
                              "column": 11
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13262,
                          "end": 13270,
                          "loc": {
                            "start": {
                              "line": 413,
                              "column": 12
                            },
                            "end": {
                              "line": 413,
                              "column": 20
                            }
                          },
                          "name": "userData"
                        },
                        "computed": false
                      }
                    }
                  },
                  "operator": "&&",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 13274,
                    "end": 13297,
                    "loc": {
                      "start": {
                        "line": 413,
                        "column": 24
                      },
                      "end": {
                        "line": 413,
                        "column": 47
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 13274,
                      "end": 13290,
                      "loc": {
                        "start": {
                          "line": 413,
                          "column": 24
                        },
                        "end": {
                          "line": 413,
                          "column": 40
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 13274,
                        "end": 13287,
                        "loc": {
                          "start": {
                            "line": 413,
                            "column": 24
                          },
                          "end": {
                            "line": 413,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 13274,
                          "end": 13278,
                          "loc": {
                            "start": {
                              "line": 413,
                              "column": 24
                            },
                            "end": {
                              "line": 413,
                              "column": 28
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13279,
                          "end": 13287,
                          "loc": {
                            "start": {
                              "line": 413,
                              "column": 29
                            },
                            "end": {
                              "line": 413,
                              "column": 37
                            }
                          },
                          "name": "userData"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13288,
                        "end": 13290,
                        "loc": {
                          "start": {
                            "line": 413,
                            "column": 38
                          },
                          "end": {
                            "line": 413,
                            "column": 40
                          }
                        },
                        "name": "id"
                      },
                      "computed": false
                    },
                    "operator": "===",
                    "right": {
                      "type": "Identifier",
                      "start": 13295,
                      "end": 13297,
                      "loc": {
                        "start": {
                          "line": 413,
                          "column": 45
                        },
                        "end": {
                          "line": 413,
                          "column": 47
                        }
                      },
                      "name": "id"
                    }
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 13299,
                  "end": 13311,
                  "loc": {
                    "start": {
                      "line": 413,
                      "column": 49
                    },
                    "end": {
                      "line": 413,
                      "column": 61
                    }
                  },
                  "argument": {
                    "type": "ThisExpression",
                    "start": 13306,
                    "end": 13310,
                    "loc": {
                      "start": {
                        "line": 413,
                        "column": 56
                      },
                      "end": {
                        "line": 413,
                        "column": 60
                      }
                    }
                  }
                },
                "alternate": null
              },
              {
                "type": "ForStatement",
                "start": 13314,
                "end": 13506,
                "loc": {
                  "start": {
                    "line": 414,
                    "column": 1
                  },
                  "end": {
                    "line": 420,
                    "column": 2
                  }
                },
                "init": {
                  "type": "VariableDeclaration",
                  "start": 13319,
                  "end": 13354,
                  "loc": {
                    "start": {
                      "line": 414,
                      "column": 6
                    },
                    "end": {
                      "line": 414,
                      "column": 41
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 13323,
                      "end": 13328,
                      "loc": {
                        "start": {
                          "line": 414,
                          "column": 10
                        },
                        "end": {
                          "line": 414,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 13323,
                        "end": 13324,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 10
                          },
                          "end": {
                            "line": 414,
                            "column": 11
                          }
                        },
                        "name": "i"
                      },
                      "init": {
                        "type": "Literal",
                        "start": 13327,
                        "end": 13328,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 14
                          },
                          "end": {
                            "line": 414,
                            "column": 15
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    },
                    {
                      "type": "VariableDeclarator",
                      "start": 13330,
                      "end": 13354,
                      "loc": {
                        "start": {
                          "line": 414,
                          "column": 17
                        },
                        "end": {
                          "line": 414,
                          "column": 41
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 13330,
                        "end": 13331,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 17
                          },
                          "end": {
                            "line": 414,
                            "column": 18
                          }
                        },
                        "name": "l"
                      },
                      "init": {
                        "type": "MemberExpression",
                        "start": 13334,
                        "end": 13354,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 21
                          },
                          "end": {
                            "line": 414,
                            "column": 41
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 13334,
                          "end": 13347,
                          "loc": {
                            "start": {
                              "line": 414,
                              "column": 21
                            },
                            "end": {
                              "line": 414,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13334,
                            "end": 13338,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 21
                              },
                              "end": {
                                "line": 414,
                                "column": 25
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13339,
                            "end": 13347,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 26
                              },
                              "end": {
                                "line": 414,
                                "column": 34
                              }
                            },
                            "name": "children"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13348,
                          "end": 13354,
                          "loc": {
                            "start": {
                              "line": 414,
                              "column": 35
                            },
                            "end": {
                              "line": 414,
                              "column": 41
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "kind": "var"
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 13356,
                  "end": 13361,
                  "loc": {
                    "start": {
                      "line": 414,
                      "column": 43
                    },
                    "end": {
                      "line": 414,
                      "column": 48
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 13356,
                    "end": 13357,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 43
                      },
                      "end": {
                        "line": 414,
                        "column": 44
                      }
                    },
                    "name": "i"
                  },
                  "operator": "<",
                  "right": {
                    "type": "Identifier",
                    "start": 13360,
                    "end": 13361,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 47
                      },
                      "end": {
                        "line": 414,
                        "column": 48
                      }
                    },
                    "name": "l"
                  }
                },
                "update": {
                  "type": "UpdateExpression",
                  "start": 13363,
                  "end": 13366,
                  "loc": {
                    "start": {
                      "line": 414,
                      "column": 50
                    },
                    "end": {
                      "line": 414,
                      "column": 53
                    }
                  },
                  "operator": "++",
                  "prefix": false,
                  "argument": {
                    "type": "Identifier",
                    "start": 13363,
                    "end": 13364,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 50
                      },
                      "end": {
                        "line": 414,
                        "column": 51
                      }
                    },
                    "name": "i"
                  }
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 13368,
                  "end": 13506,
                  "loc": {
                    "start": {
                      "line": 414,
                      "column": 55
                    },
                    "end": {
                      "line": 420,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 13373,
                      "end": 13402,
                      "loc": {
                        "start": {
                          "line": 415,
                          "column": 2
                        },
                        "end": {
                          "line": 415,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13377,
                          "end": 13401,
                          "loc": {
                            "start": {
                              "line": 415,
                              "column": 6
                            },
                            "end": {
                              "line": 415,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13377,
                            "end": 13382,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 6
                              },
                              "end": {
                                "line": 415,
                                "column": 11
                              }
                            },
                            "name": "child"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 13385,
                            "end": 13401,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 14
                              },
                              "end": {
                                "line": 415,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 13385,
                              "end": 13398,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 14
                                },
                                "end": {
                                  "line": 415,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 13385,
                                "end": 13389,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13390,
                                "end": 13398,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 27
                                  }
                                },
                                "name": "children"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13399,
                              "end": 13400,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 28
                                },
                                "end": {
                                  "line": 415,
                                  "column": 29
                                }
                              },
                              "name": "i"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13406,
                      "end": 13447,
                      "loc": {
                        "start": {
                          "line": 416,
                          "column": 2
                        },
                        "end": {
                          "line": 416,
                          "column": 43
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13410,
                          "end": 13446,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 6
                            },
                            "end": {
                              "line": 416,
                              "column": 42
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13410,
                            "end": 13416,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 6
                              },
                              "end": {
                                "line": 416,
                                "column": 12
                              }
                            },
                            "name": "object"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 13419,
                            "end": 13446,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 15
                              },
                              "end": {
                                "line": 416,
                                "column": 42
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13419,
                              "end": 13442,
                              "loc": {
                                "start": {
                                  "line": 416,
                                  "column": 15
                                },
                                "end": {
                                  "line": 416,
                                  "column": 38
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13419,
                                "end": 13424,
                                "loc": {
                                  "start": {
                                    "line": 416,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 416,
                                    "column": 20
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13425,
                                "end": 13442,
                                "loc": {
                                  "start": {
                                    "line": 416,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 416,
                                    "column": 38
                                  }
                                },
                                "name": "getObjectByUserId"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 13443,
                                "end": 13445,
                                "loc": {
                                  "start": {
                                    "line": 416,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 416,
                                    "column": 41
                                  }
                                },
                                "name": "id"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 13451,
                      "end": 13502,
                      "loc": {
                        "start": {
                          "line": 417,
                          "column": 2
                        },
                        "end": {
                          "line": 419,
                          "column": 3
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 13455,
                        "end": 13475,
                        "loc": {
                          "start": {
                            "line": 417,
                            "column": 6
                          },
                          "end": {
                            "line": 417,
                            "column": 26
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 13455,
                          "end": 13461,
                          "loc": {
                            "start": {
                              "line": 417,
                              "column": 6
                            },
                            "end": {
                              "line": 417,
                              "column": 12
                            }
                          },
                          "name": "object"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "Identifier",
                          "start": 13466,
                          "end": 13475,
                          "loc": {
                            "start": {
                              "line": 417,
                              "column": 17
                            },
                            "end": {
                              "line": 417,
                              "column": 26
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 13477,
                        "end": 13502,
                        "loc": {
                          "start": {
                            "line": 417,
                            "column": 28
                          },
                          "end": {
                            "line": 419,
                            "column": 3
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 13483,
                            "end": 13497,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 3
                              },
                              "end": {
                                "line": 418,
                                "column": 17
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 13490,
                              "end": 13496,
                              "loc": {
                                "start": {
                                  "line": 418,
                                  "column": 10
                                },
                                "end": {
                                  "line": 418,
                                  "column": 16
                                }
                              },
                              "name": "object"
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 13509,
                "end": 13526,
                "loc": {
                  "start": {
                    "line": 421,
                    "column": 1
                  },
                  "end": {
                    "line": 421,
                    "column": 18
                  }
                },
                "argument": {
                  "type": "Identifier",
                  "start": 13516,
                  "end": 13525,
                  "loc": {
                    "start": {
                      "line": 421,
                      "column": 8
                    },
                    "end": {
                      "line": 421,
                      "column": 17
                    }
                  },
                  "name": "undefined"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13533,
      "end": 13670,
      "loc": {
        "start": {
          "line": 424,
          "column": 0
        },
        "end": {
          "line": 426,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13533,
        "end": 13670,
        "loc": {
          "start": {
            "line": 424,
            "column": 0
          },
          "end": {
            "line": 426,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13533,
          "end": 13567,
          "loc": {
            "start": {
              "line": 424,
              "column": 0
            },
            "end": {
              "line": 424,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13533,
            "end": 13557,
            "loc": {
              "start": {
                "line": 424,
                "column": 0
              },
              "end": {
                "line": 424,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13533,
              "end": 13547,
              "loc": {
                "start": {
                  "line": 424,
                  "column": 0
                },
                "end": {
                  "line": 424,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13533,
                "end": 13538,
                "loc": {
                  "start": {
                    "line": 424,
                    "column": 0
                  },
                  "end": {
                    "line": 424,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13539,
                "end": 13547,
                "loc": {
                  "start": {
                    "line": 424,
                    "column": 6
                  },
                  "end": {
                    "line": 424,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13548,
              "end": 13557,
              "loc": {
                "start": {
                  "line": 424,
                  "column": 15
                },
                "end": {
                  "line": 424,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13558,
            "end": 13567,
            "loc": {
              "start": {
                "line": 424,
                "column": 25
              },
              "end": {
                "line": 424,
                "column": 34
              }
            },
            "name": "lastChild"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13570,
          "end": 13670,
          "loc": {
            "start": {
              "line": 424,
              "column": 37
            },
            "end": {
              "line": 426,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13558,
            "end": 13567,
            "loc": {
              "start": {
                "line": 424,
                "column": 25
              },
              "end": {
                "line": 424,
                "column": 34
              }
            },
            "name": "lastChild"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 13581,
            "end": 13670,
            "loc": {
              "start": {
                "line": 424,
                "column": 48
              },
              "end": {
                "line": 426,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 13585,
                "end": 13667,
                "loc": {
                  "start": {
                    "line": 425,
                    "column": 1
                  },
                  "end": {
                    "line": 425,
                    "column": 83
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 13592,
                  "end": 13666,
                  "loc": {
                    "start": {
                      "line": 425,
                      "column": 8
                    },
                    "end": {
                      "line": 425,
                      "column": 82
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 13592,
                    "end": 13612,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 8
                      },
                      "end": {
                        "line": 425,
                        "column": 28
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13592,
                      "end": 13605,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 8
                        },
                        "end": {
                          "line": 425,
                          "column": 21
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13592,
                        "end": 13596,
                        "loc": {
                          "start": {
                            "line": 425,
                            "column": 8
                          },
                          "end": {
                            "line": 425,
                            "column": 12
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13597,
                        "end": 13605,
                        "loc": {
                          "start": {
                            "line": 425,
                            "column": 13
                          },
                          "end": {
                            "line": 425,
                            "column": 21
                          }
                        },
                        "name": "children"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13606,
                      "end": 13612,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 22
                        },
                        "end": {
                          "line": 425,
                          "column": 28
                        }
                      },
                      "name": "length"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "MemberExpression",
                    "start": 13615,
                    "end": 13654,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 31
                      },
                      "end": {
                        "line": 425,
                        "column": 70
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13615,
                      "end": 13628,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 31
                        },
                        "end": {
                          "line": 425,
                          "column": 44
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13615,
                        "end": 13619,
                        "loc": {
                          "start": {
                            "line": 425,
                            "column": 31
                          },
                          "end": {
                            "line": 425,
                            "column": 35
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13620,
                        "end": 13628,
                        "loc": {
                          "start": {
                            "line": 425,
                            "column": 36
                          },
                          "end": {
                            "line": 425,
                            "column": 44
                          }
                        },
                        "name": "children"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "BinaryExpression",
                      "start": 13629,
                      "end": 13653,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 45
                        },
                        "end": {
                          "line": 425,
                          "column": 69
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 13629,
                        "end": 13649,
                        "loc": {
                          "start": {
                            "line": 425,
                            "column": 45
                          },
                          "end": {
                            "line": 425,
                            "column": 65
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 13629,
                          "end": 13642,
                          "loc": {
                            "start": {
                              "line": 425,
                              "column": 45
                            },
                            "end": {
                              "line": 425,
                              "column": 58
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13629,
                            "end": 13633,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 45
                              },
                              "end": {
                                "line": 425,
                                "column": 49
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13634,
                            "end": 13642,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 50
                              },
                              "end": {
                                "line": 425,
                                "column": 58
                              }
                            },
                            "name": "children"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13643,
                          "end": 13649,
                          "loc": {
                            "start": {
                              "line": 425,
                              "column": 59
                            },
                            "end": {
                              "line": 425,
                              "column": 65
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": "-",
                      "right": {
                        "type": "Literal",
                        "start": 13652,
                        "end": 13653,
                        "loc": {
                          "start": {
                            "line": 425,
                            "column": 68
                          },
                          "end": {
                            "line": 425,
                            "column": 69
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "computed": true
                  },
                  "alternate": {
                    "type": "Identifier",
                    "start": 13657,
                    "end": 13666,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 73
                      },
                      "end": {
                        "line": 425,
                        "column": 82
                      }
                    },
                    "name": "undefined"
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13674,
      "end": 13855,
      "loc": {
        "start": {
          "line": 428,
          "column": 0
        },
        "end": {
          "line": 432,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13674,
        "end": 13855,
        "loc": {
          "start": {
            "line": 428,
            "column": 0
          },
          "end": {
            "line": 432,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13674,
          "end": 13710,
          "loc": {
            "start": {
              "line": 428,
              "column": 0
            },
            "end": {
              "line": 428,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13674,
            "end": 13698,
            "loc": {
              "start": {
                "line": 428,
                "column": 0
              },
              "end": {
                "line": 428,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13674,
              "end": 13688,
              "loc": {
                "start": {
                  "line": 428,
                  "column": 0
                },
                "end": {
                  "line": 428,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13674,
                "end": 13679,
                "loc": {
                  "start": {
                    "line": 428,
                    "column": 0
                  },
                  "end": {
                    "line": 428,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13680,
                "end": 13688,
                "loc": {
                  "start": {
                    "line": 428,
                    "column": 6
                  },
                  "end": {
                    "line": 428,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13689,
              "end": 13698,
              "loc": {
                "start": {
                  "line": 428,
                  "column": 15
                },
                "end": {
                  "line": 428,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13699,
            "end": 13710,
            "loc": {
              "start": {
                "line": 428,
                "column": 25
              },
              "end": {
                "line": 428,
                "column": 36
              }
            },
            "name": "setPosition"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13713,
          "end": 13855,
          "loc": {
            "start": {
              "line": 428,
              "column": 39
            },
            "end": {
              "line": 432,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13699,
            "end": 13710,
            "loc": {
              "start": {
                "line": 428,
                "column": 25
              },
              "end": {
                "line": 428,
                "column": 36
              }
            },
            "name": "setPosition"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 13722,
              "end": 13728,
              "loc": {
                "start": {
                  "line": 428,
                  "column": 48
                },
                "end": {
                  "line": 428,
                  "column": 54
                }
              },
              "name": "vector"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13730,
            "end": 13855,
            "loc": {
              "start": {
                "line": 428,
                "column": 56
              },
              "end": {
                "line": 432,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 13734,
                "end": 13807,
                "loc": {
                  "start": {
                    "line": 429,
                    "column": 1
                  },
                  "end": {
                    "line": 429,
                    "column": 74
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13734,
                  "end": 13806,
                  "loc": {
                    "start": {
                      "line": 429,
                      "column": 1
                    },
                    "end": {
                      "line": 429,
                      "column": 73
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 13734,
                    "end": 13740,
                    "loc": {
                      "start": {
                        "line": 429,
                        "column": 1
                      },
                      "end": {
                        "line": 429,
                        "column": 7
                      }
                    },
                    "name": "vector"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 13743,
                    "end": 13806,
                    "loc": {
                      "start": {
                        "line": 429,
                        "column": 10
                      },
                      "end": {
                        "line": 429,
                        "column": 73
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 13743,
                      "end": 13763,
                      "loc": {
                        "start": {
                          "line": 429,
                          "column": 10
                        },
                        "end": {
                          "line": 429,
                          "column": 30
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 13743,
                        "end": 13759,
                        "loc": {
                          "start": {
                            "line": 429,
                            "column": 10
                          },
                          "end": {
                            "line": 429,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13743,
                          "end": 13752,
                          "loc": {
                            "start": {
                              "line": 429,
                              "column": 10
                            },
                            "end": {
                              "line": 429,
                              "column": 19
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13753,
                          "end": 13759,
                          "loc": {
                            "start": {
                              "line": 429,
                              "column": 20
                            },
                            "end": {
                              "line": 429,
                              "column": 26
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 13762,
                        "end": 13763,
                        "loc": {
                          "start": {
                            "line": 429,
                            "column": 29
                          },
                          "end": {
                            "line": 429,
                            "column": 30
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "NewExpression",
                      "start": 13766,
                      "end": 13797,
                      "loc": {
                        "start": {
                          "line": 429,
                          "column": 33
                        },
                        "end": {
                          "line": 429,
                          "column": 64
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13770,
                        "end": 13783,
                        "loc": {
                          "start": {
                            "line": 429,
                            "column": 37
                          },
                          "end": {
                            "line": 429,
                            "column": 50
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13770,
                          "end": 13775,
                          "loc": {
                            "start": {
                              "line": 429,
                              "column": 37
                            },
                            "end": {
                              "line": 429,
                              "column": 42
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13776,
                          "end": 13783,
                          "loc": {
                            "start": {
                              "line": 429,
                              "column": 43
                            },
                            "end": {
                              "line": 429,
                              "column": 50
                            }
                          },
                          "name": "Vector3"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "SpreadElement",
                          "start": 13784,
                          "end": 13796,
                          "loc": {
                            "start": {
                              "line": 429,
                              "column": 51
                            },
                            "end": {
                              "line": 429,
                              "column": 63
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 13787,
                            "end": 13796,
                            "loc": {
                              "start": {
                                "line": 429,
                                "column": 54
                              },
                              "end": {
                                "line": 429,
                                "column": 63
                              }
                            },
                            "name": "arguments"
                          }
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 13800,
                      "end": 13806,
                      "loc": {
                        "start": {
                          "line": 429,
                          "column": 67
                        },
                        "end": {
                          "line": 429,
                          "column": 73
                        }
                      },
                      "name": "vector"
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13810,
                "end": 13837,
                "loc": {
                  "start": {
                    "line": 430,
                    "column": 1
                  },
                  "end": {
                    "line": 430,
                    "column": 28
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 13810,
                  "end": 13836,
                  "loc": {
                    "start": {
                      "line": 430,
                      "column": 1
                    },
                    "end": {
                      "line": 430,
                      "column": 27
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13810,
                    "end": 13828,
                    "loc": {
                      "start": {
                        "line": 430,
                        "column": 1
                      },
                      "end": {
                        "line": 430,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13810,
                      "end": 13823,
                      "loc": {
                        "start": {
                          "line": 430,
                          "column": 1
                        },
                        "end": {
                          "line": 430,
                          "column": 14
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13810,
                        "end": 13814,
                        "loc": {
                          "start": {
                            "line": 430,
                            "column": 1
                          },
                          "end": {
                            "line": 430,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13815,
                        "end": 13823,
                        "loc": {
                          "start": {
                            "line": 430,
                            "column": 6
                          },
                          "end": {
                            "line": 430,
                            "column": 14
                          }
                        },
                        "name": "position"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13824,
                      "end": 13828,
                      "loc": {
                        "start": {
                          "line": 430,
                          "column": 15
                        },
                        "end": {
                          "line": 430,
                          "column": 19
                        }
                      },
                      "name": "copy"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 13829,
                      "end": 13835,
                      "loc": {
                        "start": {
                          "line": 430,
                          "column": 20
                        },
                        "end": {
                          "line": 430,
                          "column": 26
                        }
                      },
                      "name": "vector"
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 13840,
                "end": 13852,
                "loc": {
                  "start": {
                    "line": 431,
                    "column": 1
                  },
                  "end": {
                    "line": 431,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 13847,
                  "end": 13851,
                  "loc": {
                    "start": {
                      "line": 431,
                      "column": 8
                    },
                    "end": {
                      "line": 431,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13859,
      "end": 14038,
      "loc": {
        "start": {
          "line": 434,
          "column": 0
        },
        "end": {
          "line": 438,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13859,
        "end": 14038,
        "loc": {
          "start": {
            "line": 434,
            "column": 0
          },
          "end": {
            "line": 438,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13859,
          "end": 13895,
          "loc": {
            "start": {
              "line": 434,
              "column": 0
            },
            "end": {
              "line": 434,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13859,
            "end": 13883,
            "loc": {
              "start": {
                "line": 434,
                "column": 0
              },
              "end": {
                "line": 434,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13859,
              "end": 13873,
              "loc": {
                "start": {
                  "line": 434,
                  "column": 0
                },
                "end": {
                  "line": 434,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13859,
                "end": 13864,
                "loc": {
                  "start": {
                    "line": 434,
                    "column": 0
                  },
                  "end": {
                    "line": 434,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13865,
                "end": 13873,
                "loc": {
                  "start": {
                    "line": 434,
                    "column": 6
                  },
                  "end": {
                    "line": 434,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13874,
              "end": 13883,
              "loc": {
                "start": {
                  "line": 434,
                  "column": 15
                },
                "end": {
                  "line": 434,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13884,
            "end": 13895,
            "loc": {
              "start": {
                "line": 434,
                "column": 25
              },
              "end": {
                "line": 434,
                "column": 36
              }
            },
            "name": "setRotation"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13898,
          "end": 14038,
          "loc": {
            "start": {
              "line": 434,
              "column": 39
            },
            "end": {
              "line": 438,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13884,
            "end": 13895,
            "loc": {
              "start": {
                "line": 434,
                "column": 25
              },
              "end": {
                "line": 434,
                "column": 36
              }
            },
            "name": "setRotation"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 13907,
              "end": 13913,
              "loc": {
                "start": {
                  "line": 434,
                  "column": 48
                },
                "end": {
                  "line": 434,
                  "column": 54
                }
              },
              "name": "vector"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13915,
            "end": 14038,
            "loc": {
              "start": {
                "line": 434,
                "column": 56
              },
              "end": {
                "line": 438,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 13919,
                "end": 13990,
                "loc": {
                  "start": {
                    "line": 435,
                    "column": 1
                  },
                  "end": {
                    "line": 435,
                    "column": 72
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13919,
                  "end": 13989,
                  "loc": {
                    "start": {
                      "line": 435,
                      "column": 1
                    },
                    "end": {
                      "line": 435,
                      "column": 71
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 13919,
                    "end": 13925,
                    "loc": {
                      "start": {
                        "line": 435,
                        "column": 1
                      },
                      "end": {
                        "line": 435,
                        "column": 7
                      }
                    },
                    "name": "vector"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 13928,
                    "end": 13989,
                    "loc": {
                      "start": {
                        "line": 435,
                        "column": 10
                      },
                      "end": {
                        "line": 435,
                        "column": 71
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 13928,
                      "end": 13948,
                      "loc": {
                        "start": {
                          "line": 435,
                          "column": 10
                        },
                        "end": {
                          "line": 435,
                          "column": 30
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 13928,
                        "end": 13944,
                        "loc": {
                          "start": {
                            "line": 435,
                            "column": 10
                          },
                          "end": {
                            "line": 435,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13928,
                          "end": 13937,
                          "loc": {
                            "start": {
                              "line": 435,
                              "column": 10
                            },
                            "end": {
                              "line": 435,
                              "column": 19
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13938,
                          "end": 13944,
                          "loc": {
                            "start": {
                              "line": 435,
                              "column": 20
                            },
                            "end": {
                              "line": 435,
                              "column": 26
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 13947,
                        "end": 13948,
                        "loc": {
                          "start": {
                            "line": 435,
                            "column": 29
                          },
                          "end": {
                            "line": 435,
                            "column": 30
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "NewExpression",
                      "start": 13951,
                      "end": 13980,
                      "loc": {
                        "start": {
                          "line": 435,
                          "column": 33
                        },
                        "end": {
                          "line": 435,
                          "column": 62
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13955,
                        "end": 13966,
                        "loc": {
                          "start": {
                            "line": 435,
                            "column": 37
                          },
                          "end": {
                            "line": 435,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13955,
                          "end": 13960,
                          "loc": {
                            "start": {
                              "line": 435,
                              "column": 37
                            },
                            "end": {
                              "line": 435,
                              "column": 42
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13961,
                          "end": 13966,
                          "loc": {
                            "start": {
                              "line": 435,
                              "column": 43
                            },
                            "end": {
                              "line": 435,
                              "column": 48
                            }
                          },
                          "name": "Euler"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "SpreadElement",
                          "start": 13967,
                          "end": 13979,
                          "loc": {
                            "start": {
                              "line": 435,
                              "column": 49
                            },
                            "end": {
                              "line": 435,
                              "column": 61
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 13970,
                            "end": 13979,
                            "loc": {
                              "start": {
                                "line": 435,
                                "column": 52
                              },
                              "end": {
                                "line": 435,
                                "column": 61
                              }
                            },
                            "name": "arguments"
                          }
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 13983,
                      "end": 13989,
                      "loc": {
                        "start": {
                          "line": 435,
                          "column": 65
                        },
                        "end": {
                          "line": 435,
                          "column": 71
                        }
                      },
                      "name": "vector"
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13993,
                "end": 14020,
                "loc": {
                  "start": {
                    "line": 436,
                    "column": 1
                  },
                  "end": {
                    "line": 436,
                    "column": 28
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 13993,
                  "end": 14019,
                  "loc": {
                    "start": {
                      "line": 436,
                      "column": 1
                    },
                    "end": {
                      "line": 436,
                      "column": 27
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13993,
                    "end": 14011,
                    "loc": {
                      "start": {
                        "line": 436,
                        "column": 1
                      },
                      "end": {
                        "line": 436,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13993,
                      "end": 14006,
                      "loc": {
                        "start": {
                          "line": 436,
                          "column": 1
                        },
                        "end": {
                          "line": 436,
                          "column": 14
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13993,
                        "end": 13997,
                        "loc": {
                          "start": {
                            "line": 436,
                            "column": 1
                          },
                          "end": {
                            "line": 436,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13998,
                        "end": 14006,
                        "loc": {
                          "start": {
                            "line": 436,
                            "column": 6
                          },
                          "end": {
                            "line": 436,
                            "column": 14
                          }
                        },
                        "name": "rotation"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14007,
                      "end": 14011,
                      "loc": {
                        "start": {
                          "line": 436,
                          "column": 15
                        },
                        "end": {
                          "line": 436,
                          "column": 19
                        }
                      },
                      "name": "copy"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 14012,
                      "end": 14018,
                      "loc": {
                        "start": {
                          "line": 436,
                          "column": 20
                        },
                        "end": {
                          "line": 436,
                          "column": 26
                        }
                      },
                      "name": "vector"
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 14023,
                "end": 14035,
                "loc": {
                  "start": {
                    "line": 437,
                    "column": 1
                  },
                  "end": {
                    "line": 437,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 14030,
                  "end": 14034,
                  "loc": {
                    "start": {
                      "line": 437,
                      "column": 8
                    },
                    "end": {
                      "line": 437,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14042,
      "end": 14217,
      "loc": {
        "start": {
          "line": 440,
          "column": 0
        },
        "end": {
          "line": 444,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14042,
        "end": 14217,
        "loc": {
          "start": {
            "line": 440,
            "column": 0
          },
          "end": {
            "line": 444,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14042,
          "end": 14075,
          "loc": {
            "start": {
              "line": 440,
              "column": 0
            },
            "end": {
              "line": 440,
              "column": 33
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14042,
            "end": 14066,
            "loc": {
              "start": {
                "line": 440,
                "column": 0
              },
              "end": {
                "line": 440,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14042,
              "end": 14056,
              "loc": {
                "start": {
                  "line": 440,
                  "column": 0
                },
                "end": {
                  "line": 440,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14042,
                "end": 14047,
                "loc": {
                  "start": {
                    "line": 440,
                    "column": 0
                  },
                  "end": {
                    "line": 440,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14048,
                "end": 14056,
                "loc": {
                  "start": {
                    "line": 440,
                    "column": 6
                  },
                  "end": {
                    "line": 440,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 14057,
              "end": 14066,
              "loc": {
                "start": {
                  "line": 440,
                  "column": 15
                },
                "end": {
                  "line": 440,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 14067,
            "end": 14075,
            "loc": {
              "start": {
                "line": 440,
                "column": 25
              },
              "end": {
                "line": 440,
                "column": 33
              }
            },
            "name": "setScale"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 14078,
          "end": 14217,
          "loc": {
            "start": {
              "line": 440,
              "column": 36
            },
            "end": {
              "line": 444,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 14067,
            "end": 14075,
            "loc": {
              "start": {
                "line": 440,
                "column": 25
              },
              "end": {
                "line": 440,
                "column": 33
              }
            },
            "name": "setScale"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 14087,
              "end": 14093,
              "loc": {
                "start": {
                  "line": 440,
                  "column": 45
                },
                "end": {
                  "line": 440,
                  "column": 51
                }
              },
              "name": "vector"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 14095,
            "end": 14217,
            "loc": {
              "start": {
                "line": 440,
                "column": 53
              },
              "end": {
                "line": 444,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 14099,
                "end": 14172,
                "loc": {
                  "start": {
                    "line": 441,
                    "column": 1
                  },
                  "end": {
                    "line": 441,
                    "column": 74
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 14099,
                  "end": 14171,
                  "loc": {
                    "start": {
                      "line": 441,
                      "column": 1
                    },
                    "end": {
                      "line": 441,
                      "column": 73
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 14099,
                    "end": 14105,
                    "loc": {
                      "start": {
                        "line": 441,
                        "column": 1
                      },
                      "end": {
                        "line": 441,
                        "column": 7
                      }
                    },
                    "name": "vector"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 14108,
                    "end": 14171,
                    "loc": {
                      "start": {
                        "line": 441,
                        "column": 10
                      },
                      "end": {
                        "line": 441,
                        "column": 73
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 14108,
                      "end": 14128,
                      "loc": {
                        "start": {
                          "line": 441,
                          "column": 10
                        },
                        "end": {
                          "line": 441,
                          "column": 30
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 14108,
                        "end": 14124,
                        "loc": {
                          "start": {
                            "line": 441,
                            "column": 10
                          },
                          "end": {
                            "line": 441,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 14108,
                          "end": 14117,
                          "loc": {
                            "start": {
                              "line": 441,
                              "column": 10
                            },
                            "end": {
                              "line": 441,
                              "column": 19
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14118,
                          "end": 14124,
                          "loc": {
                            "start": {
                              "line": 441,
                              "column": 20
                            },
                            "end": {
                              "line": 441,
                              "column": 26
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 14127,
                        "end": 14128,
                        "loc": {
                          "start": {
                            "line": 441,
                            "column": 29
                          },
                          "end": {
                            "line": 441,
                            "column": 30
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "NewExpression",
                      "start": 14131,
                      "end": 14162,
                      "loc": {
                        "start": {
                          "line": 441,
                          "column": 33
                        },
                        "end": {
                          "line": 441,
                          "column": 64
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 14135,
                        "end": 14148,
                        "loc": {
                          "start": {
                            "line": 441,
                            "column": 37
                          },
                          "end": {
                            "line": 441,
                            "column": 50
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 14135,
                          "end": 14140,
                          "loc": {
                            "start": {
                              "line": 441,
                              "column": 37
                            },
                            "end": {
                              "line": 441,
                              "column": 42
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14141,
                          "end": 14148,
                          "loc": {
                            "start": {
                              "line": 441,
                              "column": 43
                            },
                            "end": {
                              "line": 441,
                              "column": 50
                            }
                          },
                          "name": "Vector3"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "SpreadElement",
                          "start": 14149,
                          "end": 14161,
                          "loc": {
                            "start": {
                              "line": 441,
                              "column": 51
                            },
                            "end": {
                              "line": 441,
                              "column": 63
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 14152,
                            "end": 14161,
                            "loc": {
                              "start": {
                                "line": 441,
                                "column": 54
                              },
                              "end": {
                                "line": 441,
                                "column": 63
                              }
                            },
                            "name": "arguments"
                          }
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 14165,
                      "end": 14171,
                      "loc": {
                        "start": {
                          "line": 441,
                          "column": 67
                        },
                        "end": {
                          "line": 441,
                          "column": 73
                        }
                      },
                      "name": "vector"
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 14175,
                "end": 14199,
                "loc": {
                  "start": {
                    "line": 442,
                    "column": 1
                  },
                  "end": {
                    "line": 442,
                    "column": 25
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 14175,
                  "end": 14198,
                  "loc": {
                    "start": {
                      "line": 442,
                      "column": 1
                    },
                    "end": {
                      "line": 442,
                      "column": 24
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 14175,
                    "end": 14190,
                    "loc": {
                      "start": {
                        "line": 442,
                        "column": 1
                      },
                      "end": {
                        "line": 442,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 14175,
                      "end": 14185,
                      "loc": {
                        "start": {
                          "line": 442,
                          "column": 1
                        },
                        "end": {
                          "line": 442,
                          "column": 11
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14175,
                        "end": 14179,
                        "loc": {
                          "start": {
                            "line": 442,
                            "column": 1
                          },
                          "end": {
                            "line": 442,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14180,
                        "end": 14185,
                        "loc": {
                          "start": {
                            "line": 442,
                            "column": 6
                          },
                          "end": {
                            "line": 442,
                            "column": 11
                          }
                        },
                        "name": "scale"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14186,
                      "end": 14190,
                      "loc": {
                        "start": {
                          "line": 442,
                          "column": 12
                        },
                        "end": {
                          "line": 442,
                          "column": 16
                        }
                      },
                      "name": "copy"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 14191,
                      "end": 14197,
                      "loc": {
                        "start": {
                          "line": 442,
                          "column": 17
                        },
                        "end": {
                          "line": 442,
                          "column": 23
                        }
                      },
                      "name": "vector"
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 14202,
                "end": 14214,
                "loc": {
                  "start": {
                    "line": 443,
                    "column": 1
                  },
                  "end": {
                    "line": 443,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 14209,
                  "end": 14213,
                  "loc": {
                    "start": {
                      "line": 443,
                      "column": 8
                    },
                    "end": {
                      "line": 443,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14221,
      "end": 14452,
      "loc": {
        "start": {
          "line": 446,
          "column": 0
        },
        "end": {
          "line": 453,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14221,
        "end": 14452,
        "loc": {
          "start": {
            "line": 446,
            "column": 0
          },
          "end": {
            "line": 453,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14221,
          "end": 14260,
          "loc": {
            "start": {
              "line": 446,
              "column": 0
            },
            "end": {
              "line": 446,
              "column": 39
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14221,
            "end": 14245,
            "loc": {
              "start": {
                "line": 446,
                "column": 0
              },
              "end": {
                "line": 446,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14221,
              "end": 14235,
              "loc": {
                "start": {
                  "line": 446,
                  "column": 0
                },
                "end": {
                  "line": 446,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14221,
                "end": 14226,
                "loc": {
                  "start": {
                    "line": 446,
                    "column": 0
                  },
                  "end": {
                    "line": 446,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14227,
                "end": 14235,
                "loc": {
                  "start": {
                    "line": 446,
                    "column": 6
                  },
                  "end": {
                    "line": 446,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 14236,
              "end": 14245,
              "loc": {
                "start": {
                  "line": 446,
                  "column": 15
                },
                "end": {
                  "line": 446,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 14246,
            "end": 14260,
            "loc": {
              "start": {
                "line": 446,
                "column": 25
              },
              "end": {
                "line": 446,
                "column": 39
              }
            },
            "name": "setRenderOrder"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 14263,
          "end": 14452,
          "loc": {
            "start": {
              "line": 446,
              "column": 42
            },
            "end": {
              "line": 453,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 14246,
            "end": 14260,
            "loc": {
              "start": {
                "line": 446,
                "column": 25
              },
              "end": {
                "line": 446,
                "column": 39
              }
            },
            "name": "setRenderOrder"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 14272,
              "end": 14277,
              "loc": {
                "start": {
                  "line": 446,
                  "column": 51
                },
                "end": {
                  "line": 446,
                  "column": 56
                }
              },
              "name": "index"
            },
            {
              "type": "Identifier",
              "start": 14279,
              "end": 14284,
              "loc": {
                "start": {
                  "line": 446,
                  "column": 58
                },
                "end": {
                  "line": 446,
                  "column": 63
                }
              },
              "name": "lines"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 14286,
            "end": 14452,
            "loc": {
              "start": {
                "line": 446,
                "column": 65
              },
              "end": {
                "line": 453,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 14290,
                "end": 14434,
                "loc": {
                  "start": {
                    "line": 447,
                    "column": 1
                  },
                  "end": {
                    "line": 451,
                    "column": 4
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 14290,
                  "end": 14433,
                  "loc": {
                    "start": {
                      "line": 447,
                      "column": 1
                    },
                    "end": {
                      "line": 451,
                      "column": 3
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 14290,
                    "end": 14303,
                    "loc": {
                      "start": {
                        "line": 447,
                        "column": 1
                      },
                      "end": {
                        "line": 447,
                        "column": 14
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 14290,
                      "end": 14294,
                      "loc": {
                        "start": {
                          "line": 447,
                          "column": 1
                        },
                        "end": {
                          "line": 447,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14295,
                      "end": 14303,
                      "loc": {
                        "start": {
                          "line": 447,
                          "column": 6
                        },
                        "end": {
                          "line": 447,
                          "column": 14
                        }
                      },
                      "name": "traverse"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 14304,
                      "end": 14432,
                      "loc": {
                        "start": {
                          "line": 447,
                          "column": 15
                        },
                        "end": {
                          "line": 451,
                          "column": 2
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 14304,
                          "end": 14308,
                          "loc": {
                            "start": {
                              "line": 447,
                              "column": 15
                            },
                            "end": {
                              "line": 447,
                              "column": 19
                            }
                          },
                          "name": "item"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 14312,
                        "end": 14432,
                        "loc": {
                          "start": {
                            "line": 447,
                            "column": 23
                          },
                          "end": {
                            "line": 451,
                            "column": 2
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 14317,
                            "end": 14428,
                            "loc": {
                              "start": {
                                "line": 448,
                                "column": 2
                              },
                              "end": {
                                "line": 450,
                                "column": 3
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 14321,
                              "end": 14390,
                              "loc": {
                                "start": {
                                  "line": 448,
                                  "column": 6
                                },
                                "end": {
                                  "line": 448,
                                  "column": 75
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 14321,
                                "end": 14347,
                                "loc": {
                                  "start": {
                                    "line": 448,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 448,
                                    "column": 32
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 14321,
                                  "end": 14325,
                                  "loc": {
                                    "start": {
                                      "line": 448,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 448,
                                      "column": 10
                                    }
                                  },
                                  "name": "item"
                                },
                                "operator": "instanceof",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 14337,
                                  "end": 14347,
                                  "loc": {
                                    "start": {
                                      "line": 448,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 448,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 14337,
                                    "end": 14342,
                                    "loc": {
                                      "start": {
                                        "line": 448,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 448,
                                        "column": 27
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14343,
                                    "end": 14347,
                                    "loc": {
                                      "start": {
                                        "line": 448,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 448,
                                        "column": 32
                                      }
                                    },
                                    "name": "Mesh"
                                  },
                                  "computed": false
                                }
                              },
                              "operator": "||",
                              "right": {
                                "type": "LogicalExpression",
                                "start": 14352,
                                "end": 14389,
                                "loc": {
                                  "start": {
                                    "line": 448,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 448,
                                    "column": 74
                                  }
                                },
                                "left": {
                                  "type": "UnaryExpression",
                                  "start": 14352,
                                  "end": 14359,
                                  "loc": {
                                    "start": {
                                      "line": 448,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 448,
                                      "column": 44
                                    }
                                  },
                                  "operator": "!",
                                  "prefix": true,
                                  "argument": {
                                    "type": "UnaryExpression",
                                    "start": 14353,
                                    "end": 14359,
                                    "loc": {
                                      "start": {
                                        "line": 448,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 448,
                                        "column": 44
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "Identifier",
                                      "start": 14354,
                                      "end": 14359,
                                      "loc": {
                                        "start": {
                                          "line": 448,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 448,
                                          "column": 44
                                        }
                                      },
                                      "name": "lines"
                                    }
                                  }
                                },
                                "operator": "&&",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 14363,
                                  "end": 14389,
                                  "loc": {
                                    "start": {
                                      "line": 448,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 448,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 14363,
                                    "end": 14367,
                                    "loc": {
                                      "start": {
                                        "line": 448,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 448,
                                        "column": 52
                                      }
                                    },
                                    "name": "item"
                                  },
                                  "operator": "instanceof",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 14379,
                                    "end": 14389,
                                    "loc": {
                                      "start": {
                                        "line": 448,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 448,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 14379,
                                      "end": 14384,
                                      "loc": {
                                        "start": {
                                          "line": 448,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 448,
                                          "column": 69
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 14385,
                                      "end": 14389,
                                      "loc": {
                                        "start": {
                                          "line": 448,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 448,
                                          "column": 74
                                        }
                                      },
                                      "name": "Line"
                                    },
                                    "computed": false
                                  }
                                },
                                "parenthesizedExpression": true
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 14392,
                              "end": 14428,
                              "loc": {
                                "start": {
                                  "line": 448,
                                  "column": 77
                                },
                                "end": {
                                  "line": 450,
                                  "column": 3
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14398,
                                  "end": 14423,
                                  "loc": {
                                    "start": {
                                      "line": 449,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 449,
                                      "column": 28
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 14398,
                                    "end": 14422,
                                    "loc": {
                                      "start": {
                                        "line": 449,
                                        "column": 3
                                      },
                                      "end": {
                                        "line": 449,
                                        "column": 27
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 14398,
                                      "end": 14414,
                                      "loc": {
                                        "start": {
                                          "line": 449,
                                          "column": 3
                                        },
                                        "end": {
                                          "line": 449,
                                          "column": 19
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 14398,
                                        "end": 14402,
                                        "loc": {
                                          "start": {
                                            "line": 449,
                                            "column": 3
                                          },
                                          "end": {
                                            "line": 449,
                                            "column": 7
                                          }
                                        },
                                        "name": "item"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 14403,
                                        "end": 14414,
                                        "loc": {
                                          "start": {
                                            "line": 449,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 449,
                                            "column": 19
                                          }
                                        },
                                        "name": "renderOrder"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 14417,
                                      "end": 14422,
                                      "loc": {
                                        "start": {
                                          "line": 449,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 449,
                                          "column": 27
                                        }
                                      },
                                      "name": "index"
                                    }
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 14437,
                "end": 14449,
                "loc": {
                  "start": {
                    "line": 452,
                    "column": 1
                  },
                  "end": {
                    "line": 452,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 14444,
                  "end": 14448,
                  "loc": {
                    "start": {
                      "line": 452,
                      "column": 8
                    },
                    "end": {
                      "line": 452,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14456,
      "end": 14866,
      "loc": {
        "start": {
          "line": 455,
          "column": 0
        },
        "end": {
          "line": 464,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14456,
        "end": 14866,
        "loc": {
          "start": {
            "line": 455,
            "column": 0
          },
          "end": {
            "line": 464,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14456,
          "end": 14493,
          "loc": {
            "start": {
              "line": 455,
              "column": 0
            },
            "end": {
              "line": 455,
              "column": 37
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14456,
            "end": 14480,
            "loc": {
              "start": {
                "line": 455,
                "column": 0
              },
              "end": {
                "line": 455,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14456,
              "end": 14470,
              "loc": {
                "start": {
                  "line": 455,
                  "column": 0
                },
                "end": {
                  "line": 455,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14456,
                "end": 14461,
                "loc": {
                  "start": {
                    "line": 455,
                    "column": 0
                  },
                  "end": {
                    "line": 455,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14462,
                "end": 14470,
                "loc": {
                  "start": {
                    "line": 455,
                    "column": 6
                  },
                  "end": {
                    "line": 455,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 14471,
              "end": 14480,
              "loc": {
                "start": {
                  "line": 455,
                  "column": 15
                },
                "end": {
                  "line": 455,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 14481,
            "end": 14493,
            "loc": {
              "start": {
                "line": 455,
                "column": 25
              },
              "end": {
                "line": 455,
                "column": 37
              }
            },
            "name": "updateBounds"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 14496,
          "end": 14866,
          "loc": {
            "start": {
              "line": 455,
              "column": 40
            },
            "end": {
              "line": 464,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 14481,
            "end": 14493,
            "loc": {
              "start": {
                "line": 455,
                "column": 25
              },
              "end": {
                "line": 455,
                "column": 37
              }
            },
            "name": "updateBounds"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 14505,
              "end": 14520,
              "loc": {
                "start": {
                  "line": 455,
                  "column": 49
                },
                "end": {
                  "line": 455,
                  "column": 64
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 14505,
                "end": 14508,
                "loc": {
                  "start": {
                    "line": 455,
                    "column": 49
                  },
                  "end": {
                    "line": 455,
                    "column": 52
                  }
                },
                "name": "box"
              },
              "right": {
                "type": "Identifier",
                "start": 14511,
                "end": 14520,
                "loc": {
                  "start": {
                    "line": 455,
                    "column": 55
                  },
                  "end": {
                    "line": 455,
                    "column": 64
                  }
                },
                "name": "undefined"
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 14522,
            "end": 14866,
            "loc": {
              "start": {
                "line": 455,
                "column": 66
              },
              "end": {
                "line": 464,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 14526,
                "end": 14617,
                "loc": {
                  "start": {
                    "line": 456,
                    "column": 1
                  },
                  "end": {
                    "line": 459,
                    "column": 3
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 14526,
                  "end": 14616,
                  "loc": {
                    "start": {
                      "line": 456,
                      "column": 1
                    },
                    "end": {
                      "line": 459,
                      "column": 2
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 14526,
                    "end": 14537,
                    "loc": {
                      "start": {
                        "line": 456,
                        "column": 1
                      },
                      "end": {
                        "line": 456,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 14526,
                      "end": 14530,
                      "loc": {
                        "start": {
                          "line": 456,
                          "column": 1
                        },
                        "end": {
                          "line": 456,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14531,
                      "end": 14537,
                      "loc": {
                        "start": {
                          "line": 456,
                          "column": 6
                        },
                        "end": {
                          "line": 456,
                          "column": 12
                        }
                      },
                      "name": "bounds"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "LogicalExpression",
                    "start": 14540,
                    "end": 14616,
                    "loc": {
                      "start": {
                        "line": 456,
                        "column": 15
                      },
                      "end": {
                        "line": 459,
                        "column": 2
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 14540,
                      "end": 14551,
                      "loc": {
                        "start": {
                          "line": 456,
                          "column": 15
                        },
                        "end": {
                          "line": 456,
                          "column": 26
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14540,
                        "end": 14544,
                        "loc": {
                          "start": {
                            "line": 456,
                            "column": 15
                          },
                          "end": {
                            "line": 456,
                            "column": 19
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14545,
                        "end": 14551,
                        "loc": {
                          "start": {
                            "line": 456,
                            "column": 20
                          },
                          "end": {
                            "line": 456,
                            "column": 26
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "operator": "||",
                    "right": {
                      "type": "ObjectExpression",
                      "start": 14555,
                      "end": 14616,
                      "loc": {
                        "start": {
                          "line": 456,
                          "column": 30
                        },
                        "end": {
                          "line": 459,
                          "column": 2
                        }
                      },
                      "properties": [
                        {
                          "type": "Property",
                          "start": 14560,
                          "end": 14581,
                          "loc": {
                            "start": {
                              "line": 457,
                              "column": 2
                            },
                            "end": {
                              "line": 457,
                              "column": 23
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 14560,
                            "end": 14563,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 2
                              },
                              "end": {
                                "line": 457,
                                "column": 5
                              }
                            },
                            "name": "box"
                          },
                          "value": {
                            "type": "NewExpression",
                            "start": 14565,
                            "end": 14581,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 7
                              },
                              "end": {
                                "line": 457,
                                "column": 23
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14569,
                              "end": 14579,
                              "loc": {
                                "start": {
                                  "line": 457,
                                  "column": 11
                                },
                                "end": {
                                  "line": 457,
                                  "column": 21
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 14569,
                                "end": 14574,
                                "loc": {
                                  "start": {
                                    "line": 457,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 457,
                                    "column": 16
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14575,
                                "end": 14579,
                                "loc": {
                                  "start": {
                                    "line": 457,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 457,
                                    "column": 21
                                  }
                                },
                                "name": "Box3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 14586,
                          "end": 14612,
                          "loc": {
                            "start": {
                              "line": 458,
                              "column": 2
                            },
                            "end": {
                              "line": 458,
                              "column": 28
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 14586,
                            "end": 14592,
                            "loc": {
                              "start": {
                                "line": 458,
                                "column": 2
                              },
                              "end": {
                                "line": 458,
                                "column": 8
                              }
                            },
                            "name": "sphere"
                          },
                          "value": {
                            "type": "NewExpression",
                            "start": 14594,
                            "end": 14612,
                            "loc": {
                              "start": {
                                "line": 458,
                                "column": 10
                              },
                              "end": {
                                "line": 458,
                                "column": 28
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14598,
                              "end": 14610,
                              "loc": {
                                "start": {
                                  "line": 458,
                                  "column": 14
                                },
                                "end": {
                                  "line": 458,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 14598,
                                "end": 14603,
                                "loc": {
                                  "start": {
                                    "line": 458,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 458,
                                    "column": 19
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14604,
                                "end": 14610,
                                "loc": {
                                  "start": {
                                    "line": 458,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 458,
                                    "column": 26
                                  }
                                },
                                "name": "Sphere"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "kind": "init"
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 14620,
                "end": 14712,
                "loc": {
                  "start": {
                    "line": 460,
                    "column": 1
                  },
                  "end": {
                    "line": 460,
                    "column": 93
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 14620,
                  "end": 14711,
                  "loc": {
                    "start": {
                      "line": 460,
                      "column": 1
                    },
                    "end": {
                      "line": 460,
                      "column": 92
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 14620,
                    "end": 14635,
                    "loc": {
                      "start": {
                        "line": 460,
                        "column": 1
                      },
                      "end": {
                        "line": 460,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 14620,
                      "end": 14631,
                      "loc": {
                        "start": {
                          "line": 460,
                          "column": 1
                        },
                        "end": {
                          "line": 460,
                          "column": 12
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14620,
                        "end": 14624,
                        "loc": {
                          "start": {
                            "line": 460,
                            "column": 1
                          },
                          "end": {
                            "line": 460,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14625,
                        "end": 14631,
                        "loc": {
                          "start": {
                            "line": 460,
                            "column": 6
                          },
                          "end": {
                            "line": 460,
                            "column": 12
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14632,
                      "end": 14635,
                      "loc": {
                        "start": {
                          "line": 460,
                          "column": 13
                        },
                        "end": {
                          "line": 460,
                          "column": 16
                        }
                      },
                      "name": "box"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 14638,
                    "end": 14711,
                    "loc": {
                      "start": {
                        "line": 460,
                        "column": 19
                      },
                      "end": {
                        "line": 460,
                        "column": 92
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 14638,
                      "end": 14643,
                      "loc": {
                        "start": {
                          "line": 460,
                          "column": 19
                        },
                        "end": {
                          "line": 460,
                          "column": 24
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "UnaryExpression",
                        "start": 14639,
                        "end": 14643,
                        "loc": {
                          "start": {
                            "line": 460,
                            "column": 20
                          },
                          "end": {
                            "line": 460,
                            "column": 24
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 14640,
                          "end": 14643,
                          "loc": {
                            "start": {
                              "line": 460,
                              "column": 21
                            },
                            "end": {
                              "line": 460,
                              "column": 24
                            }
                          },
                          "name": "box"
                        }
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 14646,
                      "end": 14672,
                      "loc": {
                        "start": {
                          "line": 460,
                          "column": 27
                        },
                        "end": {
                          "line": 460,
                          "column": 53
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 14646,
                        "end": 14667,
                        "loc": {
                          "start": {
                            "line": 460,
                            "column": 27
                          },
                          "end": {
                            "line": 460,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 14646,
                          "end": 14661,
                          "loc": {
                            "start": {
                              "line": 460,
                              "column": 27
                            },
                            "end": {
                              "line": 460,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 14646,
                            "end": 14657,
                            "loc": {
                              "start": {
                                "line": 460,
                                "column": 27
                              },
                              "end": {
                                "line": 460,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14646,
                              "end": 14650,
                              "loc": {
                                "start": {
                                  "line": 460,
                                  "column": 27
                                },
                                "end": {
                                  "line": 460,
                                  "column": 31
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14651,
                              "end": 14657,
                              "loc": {
                                "start": {
                                  "line": 460,
                                  "column": 32
                                },
                                "end": {
                                  "line": 460,
                                  "column": 38
                                }
                              },
                              "name": "bounds"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14658,
                            "end": 14661,
                            "loc": {
                              "start": {
                                "line": 460,
                                "column": 39
                              },
                              "end": {
                                "line": 460,
                                "column": 42
                              }
                            },
                            "name": "box"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14662,
                          "end": 14667,
                          "loc": {
                            "start": {
                              "line": 460,
                              "column": 43
                            },
                            "end": {
                              "line": 460,
                              "column": 48
                            }
                          },
                          "name": "union"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 14668,
                          "end": 14671,
                          "loc": {
                            "start": {
                              "line": 460,
                              "column": 49
                            },
                            "end": {
                              "line": 460,
                              "column": 52
                            }
                          },
                          "name": "box"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "CallExpression",
                      "start": 14675,
                      "end": 14711,
                      "loc": {
                        "start": {
                          "line": 460,
                          "column": 56
                        },
                        "end": {
                          "line": 460,
                          "column": 92
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 14675,
                        "end": 14705,
                        "loc": {
                          "start": {
                            "line": 460,
                            "column": 56
                          },
                          "end": {
                            "line": 460,
                            "column": 86
                          }
                        },
                        "object": {
                          "type": "NewExpression",
                          "start": 14675,
                          "end": 14691,
                          "loc": {
                            "start": {
                              "line": 460,
                              "column": 56
                            },
                            "end": {
                              "line": 460,
                              "column": 72
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 14679,
                            "end": 14689,
                            "loc": {
                              "start": {
                                "line": 460,
                                "column": 60
                              },
                              "end": {
                                "line": 460,
                                "column": 70
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 14679,
                              "end": 14684,
                              "loc": {
                                "start": {
                                  "line": 460,
                                  "column": 60
                                },
                                "end": {
                                  "line": 460,
                                  "column": 65
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14685,
                              "end": 14689,
                              "loc": {
                                "start": {
                                  "line": 460,
                                  "column": 66
                                },
                                "end": {
                                  "line": 460,
                                  "column": 70
                                }
                              },
                              "name": "Box3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14692,
                          "end": 14705,
                          "loc": {
                            "start": {
                              "line": 460,
                              "column": 73
                            },
                            "end": {
                              "line": 460,
                              "column": 86
                            }
                          },
                          "name": "setFromObject"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 14706,
                          "end": 14710,
                          "loc": {
                            "start": {
                              "line": 460,
                              "column": 87
                            },
                            "end": {
                              "line": 460,
                              "column": 91
                            }
                          }
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 14715,
                "end": 14772,
                "loc": {
                  "start": {
                    "line": 461,
                    "column": 1
                  },
                  "end": {
                    "line": 461,
                    "column": 58
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 14715,
                  "end": 14771,
                  "loc": {
                    "start": {
                      "line": 461,
                      "column": 1
                    },
                    "end": {
                      "line": 461,
                      "column": 57
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 14715,
                    "end": 14733,
                    "loc": {
                      "start": {
                        "line": 461,
                        "column": 1
                      },
                      "end": {
                        "line": 461,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 14715,
                      "end": 14726,
                      "loc": {
                        "start": {
                          "line": 461,
                          "column": 1
                        },
                        "end": {
                          "line": 461,
                          "column": 12
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14715,
                        "end": 14719,
                        "loc": {
                          "start": {
                            "line": 461,
                            "column": 1
                          },
                          "end": {
                            "line": 461,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14720,
                        "end": 14726,
                        "loc": {
                          "start": {
                            "line": 461,
                            "column": 6
                          },
                          "end": {
                            "line": 461,
                            "column": 12
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14727,
                      "end": 14733,
                      "loc": {
                        "start": {
                          "line": 461,
                          "column": 13
                        },
                        "end": {
                          "line": 461,
                          "column": 19
                        }
                      },
                      "name": "sphere"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "CallExpression",
                    "start": 14736,
                    "end": 14771,
                    "loc": {
                      "start": {
                        "line": 461,
                        "column": 22
                      },
                      "end": {
                        "line": 461,
                        "column": 57
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14736,
                      "end": 14769,
                      "loc": {
                        "start": {
                          "line": 461,
                          "column": 22
                        },
                        "end": {
                          "line": 461,
                          "column": 55
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 14736,
                        "end": 14751,
                        "loc": {
                          "start": {
                            "line": 461,
                            "column": 22
                          },
                          "end": {
                            "line": 461,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 14736,
                          "end": 14747,
                          "loc": {
                            "start": {
                              "line": 461,
                              "column": 22
                            },
                            "end": {
                              "line": 461,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14736,
                            "end": 14740,
                            "loc": {
                              "start": {
                                "line": 461,
                                "column": 22
                              },
                              "end": {
                                "line": 461,
                                "column": 26
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14741,
                            "end": 14747,
                            "loc": {
                              "start": {
                                "line": 461,
                                "column": 27
                              },
                              "end": {
                                "line": 461,
                                "column": 33
                              }
                            },
                            "name": "bounds"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14748,
                          "end": 14751,
                          "loc": {
                            "start": {
                              "line": 461,
                              "column": 34
                            },
                            "end": {
                              "line": 461,
                              "column": 37
                            }
                          },
                          "name": "box"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14752,
                        "end": 14769,
                        "loc": {
                          "start": {
                            "line": 461,
                            "column": 38
                          },
                          "end": {
                            "line": 461,
                            "column": 55
                          }
                        },
                        "name": "getBoundingSphere"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 14775,
                "end": 14848,
                "loc": {
                  "start": {
                    "line": 462,
                    "column": 1
                  },
                  "end": {
                    "line": 462,
                    "column": 74
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 14775,
                  "end": 14847,
                  "loc": {
                    "start": {
                      "line": 462,
                      "column": 1
                    },
                    "end": {
                      "line": 462,
                      "column": 73
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 14775,
                    "end": 14784,
                    "loc": {
                      "start": {
                        "line": 462,
                        "column": 1
                      },
                      "end": {
                        "line": 462,
                        "column": 10
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 14775,
                      "end": 14779,
                      "loc": {
                        "start": {
                          "line": 462,
                          "column": 1
                        },
                        "end": {
                          "line": 462,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14780,
                      "end": 14784,
                      "loc": {
                        "start": {
                          "line": 462,
                          "column": 6
                        },
                        "end": {
                          "line": 462,
                          "column": 10
                        }
                      },
                      "name": "view"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 14788,
                    "end": 14847,
                    "loc": {
                      "start": {
                        "line": 462,
                        "column": 14
                      },
                      "end": {
                        "line": 462,
                        "column": 73
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14788,
                      "end": 14810,
                      "loc": {
                        "start": {
                          "line": 462,
                          "column": 14
                        },
                        "end": {
                          "line": 462,
                          "column": 36
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 14788,
                        "end": 14797,
                        "loc": {
                          "start": {
                            "line": 462,
                            "column": 14
                          },
                          "end": {
                            "line": 462,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 14788,
                          "end": 14792,
                          "loc": {
                            "start": {
                              "line": 462,
                              "column": 14
                            },
                            "end": {
                              "line": 462,
                              "column": 18
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14793,
                          "end": 14797,
                          "loc": {
                            "start": {
                              "line": 462,
                              "column": 19
                            },
                            "end": {
                              "line": 462,
                              "column": 23
                            }
                          },
                          "name": "view"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14798,
                        "end": 14810,
                        "loc": {
                          "start": {
                            "line": 462,
                            "column": 24
                          },
                          "end": {
                            "line": 462,
                            "column": 36
                          }
                        },
                        "name": "updateBounds"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ConditionalExpression",
                        "start": 14811,
                        "end": 14846,
                        "loc": {
                          "start": {
                            "line": 462,
                            "column": 37
                          },
                          "end": {
                            "line": 462,
                            "column": 72
                          }
                        },
                        "test": {
                          "type": "UnaryExpression",
                          "start": 14811,
                          "end": 14816,
                          "loc": {
                            "start": {
                              "line": 462,
                              "column": 37
                            },
                            "end": {
                              "line": 462,
                              "column": 42
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 14812,
                            "end": 14816,
                            "loc": {
                              "start": {
                                "line": 462,
                                "column": 38
                              },
                              "end": {
                                "line": 462,
                                "column": 42
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 14813,
                              "end": 14816,
                              "loc": {
                                "start": {
                                  "line": 462,
                                  "column": 39
                                },
                                "end": {
                                  "line": 462,
                                  "column": 42
                                }
                              },
                              "name": "box"
                            }
                          }
                        },
                        "consequent": {
                          "type": "MemberExpression",
                          "start": 14819,
                          "end": 14834,
                          "loc": {
                            "start": {
                              "line": 462,
                              "column": 45
                            },
                            "end": {
                              "line": 462,
                              "column": 60
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 14819,
                            "end": 14830,
                            "loc": {
                              "start": {
                                "line": 462,
                                "column": 45
                              },
                              "end": {
                                "line": 462,
                                "column": 56
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14819,
                              "end": 14823,
                              "loc": {
                                "start": {
                                  "line": 462,
                                  "column": 45
                                },
                                "end": {
                                  "line": 462,
                                  "column": 49
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14824,
                              "end": 14830,
                              "loc": {
                                "start": {
                                  "line": 462,
                                  "column": 50
                                },
                                "end": {
                                  "line": 462,
                                  "column": 56
                                }
                              },
                              "name": "bounds"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14831,
                            "end": 14834,
                            "loc": {
                              "start": {
                                "line": 462,
                                "column": 57
                              },
                              "end": {
                                "line": 462,
                                "column": 60
                              }
                            },
                            "name": "box"
                          },
                          "computed": false
                        },
                        "alternate": {
                          "type": "Identifier",
                          "start": 14837,
                          "end": 14846,
                          "loc": {
                            "start": {
                              "line": 462,
                              "column": 63
                            },
                            "end": {
                              "line": 462,
                              "column": 72
                            }
                          },
                          "name": "undefined"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "start": 14851,
                "end": 14863,
                "loc": {
                  "start": {
                    "line": 463,
                    "column": 1
                  },
                  "end": {
                    "line": 463,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 14858,
                  "end": 14862,
                  "loc": {
                    "start": {
                      "line": 463,
                      "column": 8
                    },
                    "end": {
                      "line": 463,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14870,
      "end": 15027,
      "loc": {
        "start": {
          "line": 466,
          "column": 0
        },
        "end": {
          "line": 469,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14870,
        "end": 15027,
        "loc": {
          "start": {
            "line": 466,
            "column": 0
          },
          "end": {
            "line": 469,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14870,
          "end": 14904,
          "loc": {
            "start": {
              "line": 466,
              "column": 0
            },
            "end": {
              "line": 466,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14870,
            "end": 14894,
            "loc": {
              "start": {
                "line": 466,
                "column": 0
              },
              "end": {
                "line": 466,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14870,
              "end": 14884,
              "loc": {
                "start": {
                  "line": 466,
                  "column": 0
                },
                "end": {
                  "line": 466,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14870,
                "end": 14875,
                "loc": {
                  "start": {
                    "line": 466,
                    "column": 0
                  },
                  "end": {
                    "line": 466,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14876,
                "end": 14884,
                "loc": {
                  "start": {
                    "line": 466,
                    "column": 6
                  },
                  "end": {
                    "line": 466,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 14885,
              "end": 14894,
              "loc": {
                "start": {
                  "line": 466,
                  "column": 15
                },
                "end": {
                  "line": 466,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 14895,
            "end": 14904,
            "loc": {
              "start": {
                "line": 466,
                "column": 25
              },
              "end": {
                "line": 466,
                "column": 34
              }
            },
            "name": "getCenter"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 14907,
          "end": 15027,
          "loc": {
            "start": {
              "line": 466,
              "column": 37
            },
            "end": {
              "line": 469,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 14895,
            "end": 14904,
            "loc": {
              "start": {
                "line": 466,
                "column": 25
              },
              "end": {
                "line": 466,
                "column": 34
              }
            },
            "name": "getCenter"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 14916,
              "end": 14921,
              "loc": {
                "start": {
                  "line": 466,
                  "column": 46
                },
                "end": {
                  "line": 466,
                  "column": 51
                }
              },
              "name": "force"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 14923,
            "end": 15027,
            "loc": {
              "start": {
                "line": 466,
                "column": 53
              },
              "end": {
                "line": 469,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 14930,
                "end": 14977,
                "loc": {
                  "start": {
                    "line": 467,
                    "column": 4
                  },
                  "end": {
                    "line": 467,
                    "column": 51
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 14934,
                  "end": 14955,
                  "loc": {
                    "start": {
                      "line": 467,
                      "column": 8
                    },
                    "end": {
                      "line": 467,
                      "column": 29
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 14934,
                    "end": 14939,
                    "loc": {
                      "start": {
                        "line": 467,
                        "column": 8
                      },
                      "end": {
                        "line": 467,
                        "column": 13
                      }
                    },
                    "name": "force"
                  },
                  "operator": "||",
                  "right": {
                    "type": "UnaryExpression",
                    "start": 14943,
                    "end": 14955,
                    "loc": {
                      "start": {
                        "line": 467,
                        "column": 17
                      },
                      "end": {
                        "line": 467,
                        "column": 29
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 14944,
                      "end": 14955,
                      "loc": {
                        "start": {
                          "line": 467,
                          "column": 18
                        },
                        "end": {
                          "line": 467,
                          "column": 29
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14944,
                        "end": 14948,
                        "loc": {
                          "start": {
                            "line": 467,
                            "column": 18
                          },
                          "end": {
                            "line": 467,
                            "column": 22
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14949,
                        "end": 14955,
                        "loc": {
                          "start": {
                            "line": 467,
                            "column": 23
                          },
                          "end": {
                            "line": 467,
                            "column": 29
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 14957,
                  "end": 14977,
                  "loc": {
                    "start": {
                      "line": 467,
                      "column": 31
                    },
                    "end": {
                      "line": 467,
                      "column": 51
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 14957,
                    "end": 14976,
                    "loc": {
                      "start": {
                        "line": 467,
                        "column": 31
                      },
                      "end": {
                        "line": 467,
                        "column": 50
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14957,
                      "end": 14974,
                      "loc": {
                        "start": {
                          "line": 467,
                          "column": 31
                        },
                        "end": {
                          "line": 467,
                          "column": 48
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14957,
                        "end": 14961,
                        "loc": {
                          "start": {
                            "line": 467,
                            "column": 31
                          },
                          "end": {
                            "line": 467,
                            "column": 35
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14962,
                        "end": 14974,
                        "loc": {
                          "start": {
                            "line": 467,
                            "column": 36
                          },
                          "end": {
                            "line": 467,
                            "column": 48
                          }
                        },
                        "name": "updateBounds"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "ReturnStatement",
                "start": 14983,
                "end": 15024,
                "loc": {
                  "start": {
                    "line": 468,
                    "column": 4
                  },
                  "end": {
                    "line": 468,
                    "column": 45
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 14990,
                  "end": 15023,
                  "loc": {
                    "start": {
                      "line": 468,
                      "column": 11
                    },
                    "end": {
                      "line": 468,
                      "column": 44
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 14990,
                    "end": 15021,
                    "loc": {
                      "start": {
                        "line": 468,
                        "column": 11
                      },
                      "end": {
                        "line": 468,
                        "column": 42
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 14990,
                      "end": 15015,
                      "loc": {
                        "start": {
                          "line": 468,
                          "column": 11
                        },
                        "end": {
                          "line": 468,
                          "column": 36
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 14990,
                        "end": 15008,
                        "loc": {
                          "start": {
                            "line": 468,
                            "column": 11
                          },
                          "end": {
                            "line": 468,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 14990,
                          "end": 15001,
                          "loc": {
                            "start": {
                              "line": 468,
                              "column": 11
                            },
                            "end": {
                              "line": 468,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14990,
                            "end": 14994,
                            "loc": {
                              "start": {
                                "line": 468,
                                "column": 11
                              },
                              "end": {
                                "line": 468,
                                "column": 15
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14995,
                            "end": 15001,
                            "loc": {
                              "start": {
                                "line": 468,
                                "column": 16
                              },
                              "end": {
                                "line": 468,
                                "column": 22
                              }
                            },
                            "name": "bounds"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 15002,
                          "end": 15008,
                          "loc": {
                            "start": {
                              "line": 468,
                              "column": 23
                            },
                            "end": {
                              "line": 468,
                              "column": 29
                            }
                          },
                          "name": "sphere"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 15009,
                        "end": 15015,
                        "loc": {
                          "start": {
                            "line": 468,
                            "column": 30
                          },
                          "end": {
                            "line": 468,
                            "column": 36
                          }
                        },
                        "name": "center"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 15016,
                      "end": 15021,
                      "loc": {
                        "start": {
                          "line": 468,
                          "column": 37
                        },
                        "end": {
                          "line": 468,
                          "column": 42
                        }
                      },
                      "name": "clone"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15031,
      "end": 15180,
      "loc": {
        "start": {
          "line": 471,
          "column": 0
        },
        "end": {
          "line": 474,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15031,
        "end": 15180,
        "loc": {
          "start": {
            "line": 471,
            "column": 0
          },
          "end": {
            "line": 474,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15031,
          "end": 15065,
          "loc": {
            "start": {
              "line": 471,
              "column": 0
            },
            "end": {
              "line": 471,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15031,
            "end": 15055,
            "loc": {
              "start": {
                "line": 471,
                "column": 0
              },
              "end": {
                "line": 471,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15031,
              "end": 15045,
              "loc": {
                "start": {
                  "line": 471,
                  "column": 0
                },
                "end": {
                  "line": 471,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15031,
                "end": 15036,
                "loc": {
                  "start": {
                    "line": 471,
                    "column": 0
                  },
                  "end": {
                    "line": 471,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15037,
                "end": 15045,
                "loc": {
                  "start": {
                    "line": 471,
                    "column": 6
                  },
                  "end": {
                    "line": 471,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15046,
              "end": 15055,
              "loc": {
                "start": {
                  "line": 471,
                  "column": 15
                },
                "end": {
                  "line": 471,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15056,
            "end": 15065,
            "loc": {
              "start": {
                "line": 471,
                "column": 25
              },
              "end": {
                "line": 471,
                "column": 34
              }
            },
            "name": "getRadius"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15068,
          "end": 15180,
          "loc": {
            "start": {
              "line": 471,
              "column": 37
            },
            "end": {
              "line": 474,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15056,
            "end": 15065,
            "loc": {
              "start": {
                "line": 471,
                "column": 25
              },
              "end": {
                "line": 471,
                "column": 34
              }
            },
            "name": "getRadius"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 15077,
              "end": 15082,
              "loc": {
                "start": {
                  "line": 471,
                  "column": 46
                },
                "end": {
                  "line": 471,
                  "column": 51
                }
              },
              "name": "force"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 15084,
            "end": 15180,
            "loc": {
              "start": {
                "line": 471,
                "column": 53
              },
              "end": {
                "line": 474,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 15091,
                "end": 15138,
                "loc": {
                  "start": {
                    "line": 472,
                    "column": 4
                  },
                  "end": {
                    "line": 472,
                    "column": 51
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 15095,
                  "end": 15116,
                  "loc": {
                    "start": {
                      "line": 472,
                      "column": 8
                    },
                    "end": {
                      "line": 472,
                      "column": 29
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 15095,
                    "end": 15100,
                    "loc": {
                      "start": {
                        "line": 472,
                        "column": 8
                      },
                      "end": {
                        "line": 472,
                        "column": 13
                      }
                    },
                    "name": "force"
                  },
                  "operator": "||",
                  "right": {
                    "type": "UnaryExpression",
                    "start": 15104,
                    "end": 15116,
                    "loc": {
                      "start": {
                        "line": 472,
                        "column": 17
                      },
                      "end": {
                        "line": 472,
                        "column": 29
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 15105,
                      "end": 15116,
                      "loc": {
                        "start": {
                          "line": 472,
                          "column": 18
                        },
                        "end": {
                          "line": 472,
                          "column": 29
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 15105,
                        "end": 15109,
                        "loc": {
                          "start": {
                            "line": 472,
                            "column": 18
                          },
                          "end": {
                            "line": 472,
                            "column": 22
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 15110,
                        "end": 15116,
                        "loc": {
                          "start": {
                            "line": 472,
                            "column": 23
                          },
                          "end": {
                            "line": 472,
                            "column": 29
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 15118,
                  "end": 15138,
                  "loc": {
                    "start": {
                      "line": 472,
                      "column": 31
                    },
                    "end": {
                      "line": 472,
                      "column": 51
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 15118,
                    "end": 15137,
                    "loc": {
                      "start": {
                        "line": 472,
                        "column": 31
                      },
                      "end": {
                        "line": 472,
                        "column": 50
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 15118,
                      "end": 15135,
                      "loc": {
                        "start": {
                          "line": 472,
                          "column": 31
                        },
                        "end": {
                          "line": 472,
                          "column": 48
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 15118,
                        "end": 15122,
                        "loc": {
                          "start": {
                            "line": 472,
                            "column": 31
                          },
                          "end": {
                            "line": 472,
                            "column": 35
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 15123,
                        "end": 15135,
                        "loc": {
                          "start": {
                            "line": 472,
                            "column": 36
                          },
                          "end": {
                            "line": 472,
                            "column": 48
                          }
                        },
                        "name": "updateBounds"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "ReturnStatement",
                "start": 15144,
                "end": 15177,
                "loc": {
                  "start": {
                    "line": 473,
                    "column": 4
                  },
                  "end": {
                    "line": 473,
                    "column": 37
                  }
                },
                "argument": {
                  "type": "MemberExpression",
                  "start": 15151,
                  "end": 15176,
                  "loc": {
                    "start": {
                      "line": 473,
                      "column": 11
                    },
                    "end": {
                      "line": 473,
                      "column": 36
                    }
                  },
                  "object": {
                    "type": "MemberExpression",
                    "start": 15151,
                    "end": 15169,
                    "loc": {
                      "start": {
                        "line": 473,
                        "column": 11
                      },
                      "end": {
                        "line": 473,
                        "column": 29
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 15151,
                      "end": 15162,
                      "loc": {
                        "start": {
                          "line": 473,
                          "column": 11
                        },
                        "end": {
                          "line": 473,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 15151,
                        "end": 15155,
                        "loc": {
                          "start": {
                            "line": 473,
                            "column": 11
                          },
                          "end": {
                            "line": 473,
                            "column": 15
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 15156,
                        "end": 15162,
                        "loc": {
                          "start": {
                            "line": 473,
                            "column": 16
                          },
                          "end": {
                            "line": 473,
                            "column": 22
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 15163,
                      "end": 15169,
                      "loc": {
                        "start": {
                          "line": 473,
                          "column": 23
                        },
                        "end": {
                          "line": 473,
                          "column": 29
                        }
                      },
                      "name": "sphere"
                    },
                    "computed": false
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 15170,
                    "end": 15176,
                    "loc": {
                      "start": {
                        "line": 473,
                        "column": 30
                      },
                      "end": {
                        "line": 473,
                        "column": 36
                      }
                    },
                    "name": "radius"
                  },
                  "computed": false
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15184,
      "end": 15768,
      "loc": {
        "start": {
          "line": 476,
          "column": 0
        },
        "end": {
          "line": 489,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15184,
        "end": 15768,
        "loc": {
          "start": {
            "line": 476,
            "column": 0
          },
          "end": {
            "line": 489,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15184,
          "end": 15223,
          "loc": {
            "start": {
              "line": 476,
              "column": 0
            },
            "end": {
              "line": 476,
              "column": 39
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15184,
            "end": 15208,
            "loc": {
              "start": {
                "line": 476,
                "column": 0
              },
              "end": {
                "line": 476,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15184,
              "end": 15198,
              "loc": {
                "start": {
                  "line": 476,
                  "column": 0
                },
                "end": {
                  "line": 476,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15184,
                "end": 15189,
                "loc": {
                  "start": {
                    "line": 476,
                    "column": 0
                  },
                  "end": {
                    "line": 476,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15190,
                "end": 15198,
                "loc": {
                  "start": {
                    "line": 476,
                    "column": 6
                  },
                  "end": {
                    "line": 476,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15199,
              "end": 15208,
              "loc": {
                "start": {
                  "line": 476,
                  "column": 15
                },
                "end": {
                  "line": 476,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15209,
            "end": 15223,
            "loc": {
              "start": {
                "line": 476,
                "column": 25
              },
              "end": {
                "line": 476,
                "column": 39
              }
            },
            "name": "centerGeometry"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15226,
          "end": 15768,
          "loc": {
            "start": {
              "line": 476,
              "column": 42
            },
            "end": {
              "line": 489,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15209,
            "end": 15223,
            "loc": {
              "start": {
                "line": 476,
                "column": 25
              },
              "end": {
                "line": 476,
                "column": 39
              }
            },
            "name": "centerGeometry"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 15235,
              "end": 15264,
              "loc": {
                "start": {
                  "line": 476,
                  "column": 51
                },
                "end": {
                  "line": 476,
                  "column": 80
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 15235,
                "end": 15241,
                "loc": {
                  "start": {
                    "line": 476,
                    "column": 51
                  },
                  "end": {
                    "line": 476,
                    "column": 57
                  }
                },
                "name": "center"
              },
              "right": {
                "type": "CallExpression",
                "start": 15244,
                "end": 15264,
                "loc": {
                  "start": {
                    "line": 476,
                    "column": 60
                  },
                  "end": {
                    "line": 476,
                    "column": 80
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 15244,
                  "end": 15258,
                  "loc": {
                    "start": {
                      "line": 476,
                      "column": 60
                    },
                    "end": {
                      "line": 476,
                      "column": 74
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 15244,
                    "end": 15248,
                    "loc": {
                      "start": {
                        "line": 476,
                        "column": 60
                      },
                      "end": {
                        "line": 476,
                        "column": 64
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 15249,
                    "end": 15258,
                    "loc": {
                      "start": {
                        "line": 476,
                        "column": 65
                      },
                      "end": {
                        "line": 476,
                        "column": 74
                      }
                    },
                    "name": "getCenter"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 15259,
                    "end": 15263,
                    "loc": {
                      "start": {
                        "line": 476,
                        "column": 75
                      },
                      "end": {
                        "line": 476,
                        "column": 79
                      }
                    },
                    "value": true,
                    "rawValue": true,
                    "raw": "true"
                  }
                ]
              }
            },
            {
              "type": "AssignmentPattern",
              "start": 15266,
              "end": 15284,
              "loc": {
                "start": {
                  "line": 476,
                  "column": 82
                },
                "end": {
                  "line": 476,
                  "column": 100
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 15266,
                "end": 15277,
                "loc": {
                  "start": {
                    "line": 476,
                    "column": 82
                  },
                  "end": {
                    "line": 476,
                    "column": 93
                  }
                },
                "name": "setPosition"
              },
              "right": {
                "type": "Literal",
                "start": 15280,
                "end": 15284,
                "loc": {
                  "start": {
                    "line": 476,
                    "column": 96
                  },
                  "end": {
                    "line": 476,
                    "column": 100
                  }
                },
                "value": true,
                "rawValue": true,
                "raw": "true"
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 15286,
            "end": 15768,
            "loc": {
              "start": {
                "line": 476,
                "column": 102
              },
              "end": {
                "line": 489,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 15290,
                "end": 15332,
                "loc": {
                  "start": {
                    "line": 477,
                    "column": 1
                  },
                  "end": {
                    "line": 477,
                    "column": 43
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 15290,
                  "end": 15331,
                  "loc": {
                    "start": {
                      "line": 477,
                      "column": 1
                    },
                    "end": {
                      "line": 477,
                      "column": 42
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 15290,
                    "end": 15301,
                    "loc": {
                      "start": {
                        "line": 477,
                        "column": 1
                      },
                      "end": {
                        "line": 477,
                        "column": 12
                      }
                    },
                    "name": "setPosition"
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 15305,
                    "end": 15331,
                    "loc": {
                      "start": {
                        "line": 477,
                        "column": 16
                      },
                      "end": {
                        "line": 477,
                        "column": 42
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 15305,
                      "end": 15323,
                      "loc": {
                        "start": {
                          "line": 477,
                          "column": 16
                        },
                        "end": {
                          "line": 477,
                          "column": 34
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 15305,
                        "end": 15318,
                        "loc": {
                          "start": {
                            "line": 477,
                            "column": 16
                          },
                          "end": {
                            "line": 477,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 15305,
                          "end": 15309,
                          "loc": {
                            "start": {
                              "line": 477,
                              "column": 16
                            },
                            "end": {
                              "line": 477,
                              "column": 20
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 15310,
                          "end": 15318,
                          "loc": {
                            "start": {
                              "line": 477,
                              "column": 21
                            },
                            "end": {
                              "line": 477,
                              "column": 29
                            }
                          },
                          "name": "position"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 15319,
                        "end": 15323,
                        "loc": {
                          "start": {
                            "line": 477,
                            "column": 30
                          },
                          "end": {
                            "line": 477,
                            "column": 34
                          }
                        },
                        "name": "copy"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 15324,
                        "end": 15330,
                        "loc": {
                          "start": {
                            "line": 477,
                            "column": 35
                          },
                          "end": {
                            "line": 477,
                            "column": 41
                          }
                        },
                        "name": "center"
                      }
                    ]
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 15340,
                "end": 15662,
                "loc": {
                  "start": {
                    "line": 479,
                    "column": 4
                  },
                  "end": {
                    "line": 483,
                    "column": 5
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 15344,
                  "end": 15453,
                  "loc": {
                    "start": {
                      "line": 479,
                      "column": 8
                    },
                    "end": {
                      "line": 479,
                      "column": 117
                    }
                  },
                  "left": {
                    "type": "UnaryExpression",
                    "start": 15344,
                    "end": 15359,
                    "loc": {
                      "start": {
                        "line": 479,
                        "column": 8
                      },
                      "end": {
                        "line": 479,
                        "column": 23
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 15345,
                      "end": 15359,
                      "loc": {
                        "start": {
                          "line": 479,
                          "column": 9
                        },
                        "end": {
                          "line": 479,
                          "column": 23
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 15346,
                        "end": 15359,
                        "loc": {
                          "start": {
                            "line": 479,
                            "column": 10
                          },
                          "end": {
                            "line": 479,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 15346,
                          "end": 15350,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 10
                            },
                            "end": {
                              "line": 479,
                              "column": 14
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 15351,
                          "end": 15359,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 15
                            },
                            "end": {
                              "line": 479,
                              "column": 23
                            }
                          },
                          "name": "geometry"
                        },
                        "computed": false
                      }
                    }
                  },
                  "operator": "&&",
                  "right": {
                    "type": "LogicalExpression",
                    "start": 15364,
                    "end": 15452,
                    "loc": {
                      "start": {
                        "line": 479,
                        "column": 28
                      },
                      "end": {
                        "line": 479,
                        "column": 116
                      }
                    },
                    "left": {
                      "type": "BinaryExpression",
                      "start": 15364,
                      "end": 15403,
                      "loc": {
                        "start": {
                          "line": 479,
                          "column": 28
                        },
                        "end": {
                          "line": 479,
                          "column": 67
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 15364,
                        "end": 15377,
                        "loc": {
                          "start": {
                            "line": 479,
                            "column": 28
                          },
                          "end": {
                            "line": 479,
                            "column": 41
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 15364,
                          "end": 15368,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 28
                            },
                            "end": {
                              "line": 479,
                              "column": 32
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 15369,
                          "end": 15377,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 33
                            },
                            "end": {
                              "line": 479,
                              "column": 41
                            }
                          },
                          "name": "geometry"
                        },
                        "computed": false
                      },
                      "operator": "instanceof",
                      "right": {
                        "type": "MemberExpression",
                        "start": 15389,
                        "end": 15403,
                        "loc": {
                          "start": {
                            "line": 479,
                            "column": 53
                          },
                          "end": {
                            "line": 479,
                            "column": 67
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 15389,
                          "end": 15394,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 53
                            },
                            "end": {
                              "line": 479,
                              "column": 58
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 15395,
                          "end": 15403,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 59
                            },
                            "end": {
                              "line": 479,
                              "column": 67
                            }
                          },
                          "name": "Geometry"
                        },
                        "computed": false
                      }
                    },
                    "operator": "||",
                    "right": {
                      "type": "BinaryExpression",
                      "start": 15407,
                      "end": 15452,
                      "loc": {
                        "start": {
                          "line": 479,
                          "column": 71
                        },
                        "end": {
                          "line": 479,
                          "column": 116
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 15407,
                        "end": 15420,
                        "loc": {
                          "start": {
                            "line": 479,
                            "column": 71
                          },
                          "end": {
                            "line": 479,
                            "column": 84
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 15407,
                          "end": 15411,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 71
                            },
                            "end": {
                              "line": 479,
                              "column": 75
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 15412,
                          "end": 15420,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 76
                            },
                            "end": {
                              "line": 479,
                              "column": 84
                            }
                          },
                          "name": "geometry"
                        },
                        "computed": false
                      },
                      "operator": "instanceof",
                      "right": {
                        "type": "MemberExpression",
                        "start": 15432,
                        "end": 15452,
                        "loc": {
                          "start": {
                            "line": 479,
                            "column": 96
                          },
                          "end": {
                            "line": 479,
                            "column": 116
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 15432,
                          "end": 15437,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 96
                            },
                            "end": {
                              "line": 479,
                              "column": 101
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 15438,
                          "end": 15452,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 102
                            },
                            "end": {
                              "line": 479,
                              "column": 116
                            }
                          },
                          "name": "BufferGeometry"
                        },
                        "computed": false
                      }
                    },
                    "parenthesizedExpression": true
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 15455,
                  "end": 15662,
                  "loc": {
                    "start": {
                      "line": 479,
                      "column": 119
                    },
                    "end": {
                      "line": 483,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 15466,
                      "end": 15562,
                      "loc": {
                        "start": {
                          "line": 480,
                          "column": 8
                        },
                        "end": {
                          "line": 480,
                          "column": 104
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 15466,
                        "end": 15561,
                        "loc": {
                          "start": {
                            "line": 480,
                            "column": 8
                          },
                          "end": {
                            "line": 480,
                            "column": 103
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15466,
                          "end": 15491,
                          "loc": {
                            "start": {
                              "line": 480,
                              "column": 8
                            },
                            "end": {
                              "line": 480,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 15466,
                            "end": 15479,
                            "loc": {
                              "start": {
                                "line": 480,
                                "column": 8
                              },
                              "end": {
                                "line": 480,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 15466,
                              "end": 15470,
                              "loc": {
                                "start": {
                                  "line": 480,
                                  "column": 8
                                },
                                "end": {
                                  "line": 480,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15471,
                              "end": 15479,
                              "loc": {
                                "start": {
                                  "line": 480,
                                  "column": 13
                                },
                                "end": {
                                  "line": 480,
                                  "column": 21
                                }
                              },
                              "name": "geometry"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15480,
                            "end": 15491,
                            "loc": {
                              "start": {
                                "line": 480,
                                "column": 22
                              },
                              "end": {
                                "line": 480,
                                "column": 33
                              }
                            },
                            "name": "applyMatrix"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 15492,
                            "end": 15560,
                            "loc": {
                              "start": {
                                "line": 480,
                                "column": 34
                              },
                              "end": {
                                "line": 480,
                                "column": 102
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 15492,
                              "end": 15527,
                              "loc": {
                                "start": {
                                  "line": 480,
                                  "column": 34
                                },
                                "end": {
                                  "line": 480,
                                  "column": 69
                                }
                              },
                              "object": {
                                "type": "NewExpression",
                                "start": 15492,
                                "end": 15511,
                                "loc": {
                                  "start": {
                                    "line": 480,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 480,
                                    "column": 53
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 15496,
                                  "end": 15509,
                                  "loc": {
                                    "start": {
                                      "line": 480,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 480,
                                      "column": 51
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15496,
                                    "end": 15501,
                                    "loc": {
                                      "start": {
                                        "line": 480,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 480,
                                        "column": 43
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15502,
                                    "end": 15509,
                                    "loc": {
                                      "start": {
                                        "line": 480,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 480,
                                        "column": 51
                                      }
                                    },
                                    "name": "Matrix4"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15512,
                                "end": 15527,
                                "loc": {
                                  "start": {
                                    "line": 480,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 480,
                                    "column": 69
                                  }
                                },
                                "name": "makeTranslation"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "UnaryExpression",
                                "start": 15528,
                                "end": 15537,
                                "loc": {
                                  "start": {
                                    "line": 480,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 480,
                                    "column": 79
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "MemberExpression",
                                  "start": 15529,
                                  "end": 15537,
                                  "loc": {
                                    "start": {
                                      "line": 480,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 480,
                                      "column": 79
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15529,
                                    "end": 15535,
                                    "loc": {
                                      "start": {
                                        "line": 480,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 480,
                                        "column": 77
                                      }
                                    },
                                    "name": "center"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15536,
                                    "end": 15537,
                                    "loc": {
                                      "start": {
                                        "line": 480,
                                        "column": 78
                                      },
                                      "end": {
                                        "line": 480,
                                        "column": 79
                                      }
                                    },
                                    "name": "x"
                                  },
                                  "computed": false
                                }
                              },
                              {
                                "type": "UnaryExpression",
                                "start": 15539,
                                "end": 15548,
                                "loc": {
                                  "start": {
                                    "line": 480,
                                    "column": 81
                                  },
                                  "end": {
                                    "line": 480,
                                    "column": 90
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "MemberExpression",
                                  "start": 15540,
                                  "end": 15548,
                                  "loc": {
                                    "start": {
                                      "line": 480,
                                      "column": 82
                                    },
                                    "end": {
                                      "line": 480,
                                      "column": 90
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15540,
                                    "end": 15546,
                                    "loc": {
                                      "start": {
                                        "line": 480,
                                        "column": 82
                                      },
                                      "end": {
                                        "line": 480,
                                        "column": 88
                                      }
                                    },
                                    "name": "center"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15547,
                                    "end": 15548,
                                    "loc": {
                                      "start": {
                                        "line": 480,
                                        "column": 89
                                      },
                                      "end": {
                                        "line": 480,
                                        "column": 90
                                      }
                                    },
                                    "name": "y"
                                  },
                                  "computed": false
                                }
                              },
                              {
                                "type": "UnaryExpression",
                                "start": 15550,
                                "end": 15559,
                                "loc": {
                                  "start": {
                                    "line": 480,
                                    "column": 92
                                  },
                                  "end": {
                                    "line": 480,
                                    "column": 101
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "MemberExpression",
                                  "start": 15551,
                                  "end": 15559,
                                  "loc": {
                                    "start": {
                                      "line": 480,
                                      "column": 93
                                    },
                                    "end": {
                                      "line": 480,
                                      "column": 101
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15551,
                                    "end": 15557,
                                    "loc": {
                                      "start": {
                                        "line": 480,
                                        "column": 93
                                      },
                                      "end": {
                                        "line": 480,
                                        "column": 99
                                      }
                                    },
                                    "name": "center"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15558,
                                    "end": 15559,
                                    "loc": {
                                      "start": {
                                        "line": 480,
                                        "column": 100
                                      },
                                      "end": {
                                        "line": 480,
                                        "column": 101
                                      }
                                    },
                                    "name": "z"
                                  },
                                  "computed": false
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15572,
                      "end": 15607,
                      "loc": {
                        "start": {
                          "line": 481,
                          "column": 8
                        },
                        "end": {
                          "line": 481,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 15572,
                        "end": 15606,
                        "loc": {
                          "start": {
                            "line": 481,
                            "column": 8
                          },
                          "end": {
                            "line": 481,
                            "column": 42
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15572,
                          "end": 15604,
                          "loc": {
                            "start": {
                              "line": 481,
                              "column": 8
                            },
                            "end": {
                              "line": 481,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 15572,
                            "end": 15585,
                            "loc": {
                              "start": {
                                "line": 481,
                                "column": 8
                              },
                              "end": {
                                "line": 481,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 15572,
                              "end": 15576,
                              "loc": {
                                "start": {
                                  "line": 481,
                                  "column": 8
                                },
                                "end": {
                                  "line": 481,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15577,
                              "end": 15585,
                              "loc": {
                                "start": {
                                  "line": 481,
                                  "column": 13
                                },
                                "end": {
                                  "line": 481,
                                  "column": 21
                                }
                              },
                              "name": "geometry"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15586,
                            "end": 15604,
                            "loc": {
                              "start": {
                                "line": 481,
                                "column": 22
                              },
                              "end": {
                                "line": 481,
                                "column": 40
                              }
                            },
                            "name": "computeBoundingBox"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15617,
                      "end": 15655,
                      "loc": {
                        "start": {
                          "line": 482,
                          "column": 8
                        },
                        "end": {
                          "line": 482,
                          "column": 46
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 15617,
                        "end": 15654,
                        "loc": {
                          "start": {
                            "line": 482,
                            "column": 8
                          },
                          "end": {
                            "line": 482,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15617,
                          "end": 15652,
                          "loc": {
                            "start": {
                              "line": 482,
                              "column": 8
                            },
                            "end": {
                              "line": 482,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 15617,
                            "end": 15630,
                            "loc": {
                              "start": {
                                "line": 482,
                                "column": 8
                              },
                              "end": {
                                "line": 482,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 15617,
                              "end": 15621,
                              "loc": {
                                "start": {
                                  "line": 482,
                                  "column": 8
                                },
                                "end": {
                                  "line": 482,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15622,
                              "end": 15630,
                              "loc": {
                                "start": {
                                  "line": 482,
                                  "column": 13
                                },
                                "end": {
                                  "line": 482,
                                  "column": 21
                                }
                              },
                              "name": "geometry"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15631,
                            "end": 15652,
                            "loc": {
                              "start": {
                                "line": 482,
                                "column": 22
                              },
                              "end": {
                                "line": 482,
                                "column": 43
                              }
                            },
                            "name": "computeBoundingSphere"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "ForOfStatement",
                "start": 15670,
                "end": 15748,
                "loc": {
                  "start": {
                    "line": 485,
                    "column": 4
                  },
                  "end": {
                    "line": 486,
                    "column": 44
                  }
                },
                "left": {
                  "type": "VariableDeclaration",
                  "start": 15675,
                  "end": 15684,
                  "loc": {
                    "start": {
                      "line": 485,
                      "column": 9
                    },
                    "end": {
                      "line": 485,
                      "column": 18
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 15679,
                      "end": 15684,
                      "loc": {
                        "start": {
                          "line": 485,
                          "column": 13
                        },
                        "end": {
                          "line": 485,
                          "column": 18
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 15679,
                        "end": 15684,
                        "loc": {
                          "start": {
                            "line": 485,
                            "column": 13
                          },
                          "end": {
                            "line": 485,
                            "column": 18
                          }
                        },
                        "name": "child"
                      },
                      "init": null
                    }
                  ],
                  "kind": "let"
                },
                "right": {
                  "type": "MemberExpression",
                  "start": 15688,
                  "end": 15701,
                  "loc": {
                    "start": {
                      "line": 485,
                      "column": 22
                    },
                    "end": {
                      "line": 485,
                      "column": 35
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 15688,
                    "end": 15692,
                    "loc": {
                      "start": {
                        "line": 485,
                        "column": 22
                      },
                      "end": {
                        "line": 485,
                        "column": 26
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 15693,
                    "end": 15701,
                    "loc": {
                      "start": {
                        "line": 485,
                        "column": 27
                      },
                      "end": {
                        "line": 485,
                        "column": 35
                      }
                    },
                    "name": "children"
                  },
                  "computed": false
                },
                "body": {
                  "type": "ExpressionStatement",
                  "start": 15712,
                  "end": 15748,
                  "loc": {
                    "start": {
                      "line": 486,
                      "column": 8
                    },
                    "end": {
                      "line": 486,
                      "column": 44
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 15712,
                    "end": 15747,
                    "loc": {
                      "start": {
                        "line": 486,
                        "column": 8
                      },
                      "end": {
                        "line": 486,
                        "column": 43
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 15712,
                      "end": 15732,
                      "loc": {
                        "start": {
                          "line": 486,
                          "column": 8
                        },
                        "end": {
                          "line": 486,
                          "column": 28
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 15712,
                        "end": 15717,
                        "loc": {
                          "start": {
                            "line": 486,
                            "column": 8
                          },
                          "end": {
                            "line": 486,
                            "column": 13
                          }
                        },
                        "name": "child"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 15718,
                        "end": 15732,
                        "loc": {
                          "start": {
                            "line": 486,
                            "column": 14
                          },
                          "end": {
                            "line": 486,
                            "column": 28
                          }
                        },
                        "name": "centerGeometry"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 15733,
                        "end": 15739,
                        "loc": {
                          "start": {
                            "line": 486,
                            "column": 29
                          },
                          "end": {
                            "line": 486,
                            "column": 35
                          }
                        },
                        "name": "center"
                      },
                      {
                        "type": "Literal",
                        "start": 15741,
                        "end": 15746,
                        "loc": {
                          "start": {
                            "line": 486,
                            "column": 37
                          },
                          "end": {
                            "line": 486,
                            "column": 42
                          }
                        },
                        "value": false,
                        "rawValue": false,
                        "raw": "false"
                      }
                    ]
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "start": 15753,
                "end": 15765,
                "loc": {
                  "start": {
                    "line": 488,
                    "column": 1
                  },
                  "end": {
                    "line": 488,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 15760,
                  "end": 15764,
                  "loc": {
                    "start": {
                      "line": 488,
                      "column": 8
                    },
                    "end": {
                      "line": 488,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15772,
      "end": 15911,
      "loc": {
        "start": {
          "line": 491,
          "column": 0
        },
        "end": {
          "line": 495,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15772,
        "end": 15911,
        "loc": {
          "start": {
            "line": 491,
            "column": 0
          },
          "end": {
            "line": 495,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15772,
          "end": 15816,
          "loc": {
            "start": {
              "line": 491,
              "column": 0
            },
            "end": {
              "line": 491,
              "column": 44
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15772,
            "end": 15796,
            "loc": {
              "start": {
                "line": 491,
                "column": 0
              },
              "end": {
                "line": 491,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15772,
              "end": 15786,
              "loc": {
                "start": {
                  "line": 491,
                  "column": 0
                },
                "end": {
                  "line": 491,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15772,
                "end": 15777,
                "loc": {
                  "start": {
                    "line": 491,
                    "column": 0
                  },
                  "end": {
                    "line": 491,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15778,
                "end": 15786,
                "loc": {
                  "start": {
                    "line": 491,
                    "column": 6
                  },
                  "end": {
                    "line": 491,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15787,
              "end": 15796,
              "loc": {
                "start": {
                  "line": 491,
                  "column": 15
                },
                "end": {
                  "line": 491,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15797,
            "end": 15816,
            "loc": {
              "start": {
                "line": 491,
                "column": 25
              },
              "end": {
                "line": 491,
                "column": 44
              }
            },
            "name": "centerChildGeometry"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15819,
          "end": 15911,
          "loc": {
            "start": {
              "line": 491,
              "column": 47
            },
            "end": {
              "line": 495,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15797,
            "end": 15816,
            "loc": {
              "start": {
                "line": 491,
                "column": 25
              },
              "end": {
                "line": 491,
                "column": 44
              }
            },
            "name": "centerChildGeometry"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 15830,
            "end": 15911,
            "loc": {
              "start": {
                "line": 491,
                "column": 58
              },
              "end": {
                "line": 495,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ForOfStatement",
                "start": 15834,
                "end": 15893,
                "loc": {
                  "start": {
                    "line": 492,
                    "column": 1
                  },
                  "end": {
                    "line": 493,
                    "column": 25
                  }
                },
                "left": {
                  "type": "VariableDeclaration",
                  "start": 15839,
                  "end": 15848,
                  "loc": {
                    "start": {
                      "line": 492,
                      "column": 6
                    },
                    "end": {
                      "line": 492,
                      "column": 15
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 15843,
                      "end": 15848,
                      "loc": {
                        "start": {
                          "line": 492,
                          "column": 10
                        },
                        "end": {
                          "line": 492,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 15843,
                        "end": 15848,
                        "loc": {
                          "start": {
                            "line": 492,
                            "column": 10
                          },
                          "end": {
                            "line": 492,
                            "column": 15
                          }
                        },
                        "name": "child"
                      },
                      "init": null
                    }
                  ],
                  "kind": "let"
                },
                "right": {
                  "type": "MemberExpression",
                  "start": 15852,
                  "end": 15865,
                  "loc": {
                    "start": {
                      "line": 492,
                      "column": 19
                    },
                    "end": {
                      "line": 492,
                      "column": 32
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 15852,
                    "end": 15856,
                    "loc": {
                      "start": {
                        "line": 492,
                        "column": 19
                      },
                      "end": {
                        "line": 492,
                        "column": 23
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 15857,
                    "end": 15865,
                    "loc": {
                      "start": {
                        "line": 492,
                        "column": 24
                      },
                      "end": {
                        "line": 492,
                        "column": 32
                      }
                    },
                    "name": "children"
                  },
                  "computed": false
                },
                "body": {
                  "type": "ExpressionStatement",
                  "start": 15870,
                  "end": 15893,
                  "loc": {
                    "start": {
                      "line": 493,
                      "column": 2
                    },
                    "end": {
                      "line": 493,
                      "column": 25
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 15870,
                    "end": 15892,
                    "loc": {
                      "start": {
                        "line": 493,
                        "column": 2
                      },
                      "end": {
                        "line": 493,
                        "column": 24
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 15870,
                      "end": 15890,
                      "loc": {
                        "start": {
                          "line": 493,
                          "column": 2
                        },
                        "end": {
                          "line": 493,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 15870,
                        "end": 15875,
                        "loc": {
                          "start": {
                            "line": 493,
                            "column": 2
                          },
                          "end": {
                            "line": 493,
                            "column": 7
                          }
                        },
                        "name": "child"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 15876,
                        "end": 15890,
                        "loc": {
                          "start": {
                            "line": 493,
                            "column": 8
                          },
                          "end": {
                            "line": 493,
                            "column": 22
                          }
                        },
                        "name": "centerGeometry"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "start": 15896,
                "end": 15908,
                "loc": {
                  "start": {
                    "line": 494,
                    "column": 1
                  },
                  "end": {
                    "line": 494,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 15903,
                  "end": 15907,
                  "loc": {
                    "start": {
                      "line": 494,
                      "column": 8
                    },
                    "end": {
                      "line": 494,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15915,
      "end": 16025,
      "loc": {
        "start": {
          "line": 497,
          "column": 0
        },
        "end": {
          "line": 499,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15915,
        "end": 16025,
        "loc": {
          "start": {
            "line": 497,
            "column": 0
          },
          "end": {
            "line": 499,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15915,
          "end": 15956,
          "loc": {
            "start": {
              "line": 497,
              "column": 0
            },
            "end": {
              "line": 497,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15915,
            "end": 15939,
            "loc": {
              "start": {
                "line": 497,
                "column": 0
              },
              "end": {
                "line": 497,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15915,
              "end": 15929,
              "loc": {
                "start": {
                  "line": 497,
                  "column": 0
                },
                "end": {
                  "line": 497,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15915,
                "end": 15920,
                "loc": {
                  "start": {
                    "line": 497,
                    "column": 0
                  },
                  "end": {
                    "line": 497,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15921,
                "end": 15929,
                "loc": {
                  "start": {
                    "line": 497,
                    "column": 6
                  },
                  "end": {
                    "line": 497,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15930,
              "end": 15939,
              "loc": {
                "start": {
                  "line": 497,
                  "column": 15
                },
                "end": {
                  "line": 497,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15940,
            "end": 15956,
            "loc": {
              "start": {
                "line": 497,
                "column": 25
              },
              "end": {
                "line": 497,
                "column": 41
              }
            },
            "name": "addEventListener"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15959,
          "end": 16025,
          "loc": {
            "start": {
              "line": 497,
              "column": 44
            },
            "end": {
              "line": 499,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15940,
            "end": 15956,
            "loc": {
              "start": {
                "line": 497,
                "column": 25
              },
              "end": {
                "line": 497,
                "column": 41
              }
            },
            "name": "addEventListener"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 15968,
              "end": 15972,
              "loc": {
                "start": {
                  "line": 497,
                  "column": 53
                },
                "end": {
                  "line": 497,
                  "column": 57
                }
              },
              "name": "type"
            },
            {
              "type": "Identifier",
              "start": 15974,
              "end": 15982,
              "loc": {
                "start": {
                  "line": 497,
                  "column": 59
                },
                "end": {
                  "line": 497,
                  "column": 67
                }
              },
              "name": "listener"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 15984,
            "end": 16025,
            "loc": {
              "start": {
                "line": 497,
                "column": 69
              },
              "end": {
                "line": 499,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 15991,
                "end": 16022,
                "loc": {
                  "start": {
                    "line": 498,
                    "column": 4
                  },
                  "end": {
                    "line": 498,
                    "column": 35
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 15998,
                  "end": 16021,
                  "loc": {
                    "start": {
                      "line": 498,
                      "column": 11
                    },
                    "end": {
                      "line": 498,
                      "column": 34
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 15998,
                    "end": 16005,
                    "loc": {
                      "start": {
                        "line": 498,
                        "column": 11
                      },
                      "end": {
                        "line": 498,
                        "column": 18
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 15998,
                      "end": 16002,
                      "loc": {
                        "start": {
                          "line": 498,
                          "column": 11
                        },
                        "end": {
                          "line": 498,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 16003,
                      "end": 16005,
                      "loc": {
                        "start": {
                          "line": 498,
                          "column": 16
                        },
                        "end": {
                          "line": 498,
                          "column": 18
                        }
                      },
                      "name": "on"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 16006,
                      "end": 16010,
                      "loc": {
                        "start": {
                          "line": 498,
                          "column": 19
                        },
                        "end": {
                          "line": 498,
                          "column": 23
                        }
                      },
                      "name": "type"
                    },
                    {
                      "type": "Identifier",
                      "start": 16012,
                      "end": 16020,
                      "loc": {
                        "start": {
                          "line": 498,
                          "column": 25
                        },
                        "end": {
                          "line": 498,
                          "column": 33
                        }
                      },
                      "name": "listener"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 16029,
      "end": 16148,
      "loc": {
        "start": {
          "line": 501,
          "column": 0
        },
        "end": {
          "line": 503,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 16029,
        "end": 16148,
        "loc": {
          "start": {
            "line": 501,
            "column": 0
          },
          "end": {
            "line": 503,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 16029,
          "end": 16070,
          "loc": {
            "start": {
              "line": 501,
              "column": 0
            },
            "end": {
              "line": 501,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 16029,
            "end": 16053,
            "loc": {
              "start": {
                "line": 501,
                "column": 0
              },
              "end": {
                "line": 501,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 16029,
              "end": 16043,
              "loc": {
                "start": {
                  "line": 501,
                  "column": 0
                },
                "end": {
                  "line": 501,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 16029,
                "end": 16034,
                "loc": {
                  "start": {
                    "line": 501,
                    "column": 0
                  },
                  "end": {
                    "line": 501,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 16035,
                "end": 16043,
                "loc": {
                  "start": {
                    "line": 501,
                    "column": 6
                  },
                  "end": {
                    "line": 501,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 16044,
              "end": 16053,
              "loc": {
                "start": {
                  "line": 501,
                  "column": 15
                },
                "end": {
                  "line": 501,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 16054,
            "end": 16070,
            "loc": {
              "start": {
                "line": 501,
                "column": 25
              },
              "end": {
                "line": 501,
                "column": 41
              }
            },
            "name": "hasEventListener"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 16073,
          "end": 16148,
          "loc": {
            "start": {
              "line": 501,
              "column": 44
            },
            "end": {
              "line": 503,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 16054,
            "end": 16070,
            "loc": {
              "start": {
                "line": 501,
                "column": 25
              },
              "end": {
                "line": 501,
                "column": 41
              }
            },
            "name": "hasEventListener"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 16082,
              "end": 16086,
              "loc": {
                "start": {
                  "line": 501,
                  "column": 53
                },
                "end": {
                  "line": 501,
                  "column": 57
                }
              },
              "name": "type"
            },
            {
              "type": "Identifier",
              "start": 16088,
              "end": 16096,
              "loc": {
                "start": {
                  "line": 501,
                  "column": 59
                },
                "end": {
                  "line": 501,
                  "column": 67
                }
              },
              "name": "listener"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 16098,
            "end": 16148,
            "loc": {
              "start": {
                "line": 501,
                "column": 69
              },
              "end": {
                "line": 503,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 16105,
                "end": 16145,
                "loc": {
                  "start": {
                    "line": 502,
                    "column": 4
                  },
                  "end": {
                    "line": 502,
                    "column": 44
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 16112,
                  "end": 16144,
                  "loc": {
                    "start": {
                      "line": 502,
                      "column": 11
                    },
                    "end": {
                      "line": 502,
                      "column": 43
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 16112,
                    "end": 16128,
                    "loc": {
                      "start": {
                        "line": 502,
                        "column": 11
                      },
                      "end": {
                        "line": 502,
                        "column": 27
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 16112,
                      "end": 16116,
                      "loc": {
                        "start": {
                          "line": 502,
                          "column": 11
                        },
                        "end": {
                          "line": 502,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 16117,
                      "end": 16128,
                      "loc": {
                        "start": {
                          "line": 502,
                          "column": 16
                        },
                        "end": {
                          "line": 502,
                          "column": 27
                        }
                      },
                      "name": "hasListener"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 16129,
                      "end": 16133,
                      "loc": {
                        "start": {
                          "line": 502,
                          "column": 28
                        },
                        "end": {
                          "line": 502,
                          "column": 32
                        }
                      },
                      "name": "type"
                    },
                    {
                      "type": "Identifier",
                      "start": 16135,
                      "end": 16143,
                      "loc": {
                        "start": {
                          "line": 502,
                          "column": 34
                        },
                        "end": {
                          "line": 502,
                          "column": 42
                        }
                      },
                      "name": "listener"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 16152,
      "end": 16277,
      "loc": {
        "start": {
          "line": 505,
          "column": 0
        },
        "end": {
          "line": 507,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 16152,
        "end": 16277,
        "loc": {
          "start": {
            "line": 505,
            "column": 0
          },
          "end": {
            "line": 507,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 16152,
          "end": 16196,
          "loc": {
            "start": {
              "line": 505,
              "column": 0
            },
            "end": {
              "line": 505,
              "column": 44
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 16152,
            "end": 16176,
            "loc": {
              "start": {
                "line": 505,
                "column": 0
              },
              "end": {
                "line": 505,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 16152,
              "end": 16166,
              "loc": {
                "start": {
                  "line": 505,
                  "column": 0
                },
                "end": {
                  "line": 505,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 16152,
                "end": 16157,
                "loc": {
                  "start": {
                    "line": 505,
                    "column": 0
                  },
                  "end": {
                    "line": 505,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 16158,
                "end": 16166,
                "loc": {
                  "start": {
                    "line": 505,
                    "column": 6
                  },
                  "end": {
                    "line": 505,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 16167,
              "end": 16176,
              "loc": {
                "start": {
                  "line": 505,
                  "column": 15
                },
                "end": {
                  "line": 505,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 16177,
            "end": 16196,
            "loc": {
              "start": {
                "line": 505,
                "column": 25
              },
              "end": {
                "line": 505,
                "column": 44
              }
            },
            "name": "removeEventListener"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 16199,
          "end": 16277,
          "loc": {
            "start": {
              "line": 505,
              "column": 47
            },
            "end": {
              "line": 507,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 16177,
            "end": 16196,
            "loc": {
              "start": {
                "line": 505,
                "column": 25
              },
              "end": {
                "line": 505,
                "column": 44
              }
            },
            "name": "removeEventListener"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 16208,
              "end": 16212,
              "loc": {
                "start": {
                  "line": 505,
                  "column": 56
                },
                "end": {
                  "line": 505,
                  "column": 60
                }
              },
              "name": "type"
            },
            {
              "type": "Identifier",
              "start": 16214,
              "end": 16222,
              "loc": {
                "start": {
                  "line": 505,
                  "column": 62
                },
                "end": {
                  "line": 505,
                  "column": 70
                }
              },
              "name": "listener"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 16224,
            "end": 16277,
            "loc": {
              "start": {
                "line": 505,
                "column": 72
              },
              "end": {
                "line": 507,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 16231,
                "end": 16274,
                "loc": {
                  "start": {
                    "line": 506,
                    "column": 4
                  },
                  "end": {
                    "line": 506,
                    "column": 47
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 16238,
                  "end": 16273,
                  "loc": {
                    "start": {
                      "line": 506,
                      "column": 11
                    },
                    "end": {
                      "line": 506,
                      "column": 46
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 16238,
                    "end": 16257,
                    "loc": {
                      "start": {
                        "line": 506,
                        "column": 11
                      },
                      "end": {
                        "line": 506,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 16238,
                      "end": 16242,
                      "loc": {
                        "start": {
                          "line": 506,
                          "column": 11
                        },
                        "end": {
                          "line": 506,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 16243,
                      "end": 16257,
                      "loc": {
                        "start": {
                          "line": 506,
                          "column": 16
                        },
                        "end": {
                          "line": 506,
                          "column": 30
                        }
                      },
                      "name": "removeListener"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 16258,
                      "end": 16262,
                      "loc": {
                        "start": {
                          "line": 506,
                          "column": 31
                        },
                        "end": {
                          "line": 506,
                          "column": 35
                        }
                      },
                      "name": "type"
                    },
                    {
                      "type": "Identifier",
                      "start": 16264,
                      "end": 16272,
                      "loc": {
                        "start": {
                          "line": 506,
                          "column": 37
                        },
                        "end": {
                          "line": 506,
                          "column": 45
                        }
                      },
                      "name": "listener"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 16281,
      "end": 16390,
      "loc": {
        "start": {
          "line": 509,
          "column": 0
        },
        "end": {
          "line": 511,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 16281,
        "end": 16390,
        "loc": {
          "start": {
            "line": 509,
            "column": 0
          },
          "end": {
            "line": 511,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 16281,
          "end": 16319,
          "loc": {
            "start": {
              "line": 509,
              "column": 0
            },
            "end": {
              "line": 509,
              "column": 38
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 16281,
            "end": 16305,
            "loc": {
              "start": {
                "line": 509,
                "column": 0
              },
              "end": {
                "line": 509,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 16281,
              "end": 16295,
              "loc": {
                "start": {
                  "line": 509,
                  "column": 0
                },
                "end": {
                  "line": 509,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 16281,
                "end": 16286,
                "loc": {
                  "start": {
                    "line": 509,
                    "column": 0
                  },
                  "end": {
                    "line": 509,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 16287,
                "end": 16295,
                "loc": {
                  "start": {
                    "line": 509,
                    "column": 6
                  },
                  "end": {
                    "line": 509,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 16296,
              "end": 16305,
              "loc": {
                "start": {
                  "line": 509,
                  "column": 15
                },
                "end": {
                  "line": 509,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 16306,
            "end": 16319,
            "loc": {
              "start": {
                "line": 509,
                "column": 25
              },
              "end": {
                "line": 509,
                "column": 38
              }
            },
            "name": "dispatchEvent"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 16322,
          "end": 16390,
          "loc": {
            "start": {
              "line": 509,
              "column": 41
            },
            "end": {
              "line": 511,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 16306,
            "end": 16319,
            "loc": {
              "start": {
                "line": 509,
                "column": 25
              },
              "end": {
                "line": 509,
                "column": 38
              }
            },
            "name": "dispatchEvent"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 16331,
              "end": 16336,
              "loc": {
                "start": {
                  "line": 509,
                  "column": 50
                },
                "end": {
                  "line": 509,
                  "column": 55
                }
              },
              "name": "event"
            },
            {
              "type": "RestElement",
              "start": 16338,
              "end": 16345,
              "loc": {
                "start": {
                  "line": 509,
                  "column": 57
                },
                "end": {
                  "line": 509,
                  "column": 64
                }
              },
              "argument": {
                "type": "Identifier",
                "start": 16341,
                "end": 16345,
                "loc": {
                  "start": {
                    "line": 509,
                    "column": 60
                  },
                  "end": {
                    "line": 509,
                    "column": 64
                  }
                },
                "name": "args"
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 16347,
            "end": 16390,
            "loc": {
              "start": {
                "line": 509,
                "column": 66
              },
              "end": {
                "line": 511,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 16354,
                "end": 16387,
                "loc": {
                  "start": {
                    "line": 510,
                    "column": 4
                  },
                  "end": {
                    "line": 510,
                    "column": 37
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 16361,
                  "end": 16386,
                  "loc": {
                    "start": {
                      "line": 510,
                      "column": 11
                    },
                    "end": {
                      "line": 510,
                      "column": 36
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 16361,
                    "end": 16370,
                    "loc": {
                      "start": {
                        "line": 510,
                        "column": 11
                      },
                      "end": {
                        "line": 510,
                        "column": 20
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 16361,
                      "end": 16365,
                      "loc": {
                        "start": {
                          "line": 510,
                          "column": 11
                        },
                        "end": {
                          "line": 510,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 16366,
                      "end": 16370,
                      "loc": {
                        "start": {
                          "line": 510,
                          "column": 16
                        },
                        "end": {
                          "line": 510,
                          "column": 20
                        }
                      },
                      "name": "emit"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 16371,
                      "end": 16376,
                      "loc": {
                        "start": {
                          "line": 510,
                          "column": 21
                        },
                        "end": {
                          "line": 510,
                          "column": 26
                        }
                      },
                      "name": "event"
                    },
                    {
                      "type": "SpreadElement",
                      "start": 16378,
                      "end": 16385,
                      "loc": {
                        "start": {
                          "line": 510,
                          "column": 28
                        },
                        "end": {
                          "line": 510,
                          "column": 35
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 16381,
                        "end": 16385,
                        "loc": {
                          "start": {
                            "line": 510,
                            "column": 31
                          },
                          "end": {
                            "line": 510,
                            "column": 35
                          }
                        },
                        "name": "args"
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 16394,
      "end": 16660,
      "loc": {
        "start": {
          "line": 513,
          "column": 0
        },
        "end": {
          "line": 521,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 16394,
        "end": 16660,
        "loc": {
          "start": {
            "line": 513,
            "column": 0
          },
          "end": {
            "line": 521,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 16394,
          "end": 16433,
          "loc": {
            "start": {
              "line": 513,
              "column": 0
            },
            "end": {
              "line": 513,
              "column": 39
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 16394,
            "end": 16418,
            "loc": {
              "start": {
                "line": 513,
                "column": 0
              },
              "end": {
                "line": 513,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 16394,
              "end": 16408,
              "loc": {
                "start": {
                  "line": 513,
                  "column": 0
                },
                "end": {
                  "line": 513,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 16394,
                "end": 16399,
                "loc": {
                  "start": {
                    "line": 513,
                    "column": 0
                  },
                  "end": {
                    "line": 513,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 16400,
                "end": 16408,
                "loc": {
                  "start": {
                    "line": 513,
                    "column": 6
                  },
                  "end": {
                    "line": 513,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 16409,
              "end": 16418,
              "loc": {
                "start": {
                  "line": 513,
                  "column": 15
                },
                "end": {
                  "line": 513,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 16419,
            "end": 16433,
            "loc": {
              "start": {
                "line": 513,
                "column": 25
              },
              "end": {
                "line": 513,
                "column": 39
              }
            },
            "name": "setRenderOrder"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 16436,
          "end": 16660,
          "loc": {
            "start": {
              "line": 513,
              "column": 42
            },
            "end": {
              "line": 521,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 16419,
            "end": 16433,
            "loc": {
              "start": {
                "line": 513,
                "column": 25
              },
              "end": {
                "line": 513,
                "column": 39
              }
            },
            "name": "setRenderOrder"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 16445,
              "end": 16473,
              "loc": {
                "start": {
                  "line": 513,
                  "column": 51
                },
                "end": {
                  "line": 513,
                  "column": 79
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 16445,
                "end": 16450,
                "loc": {
                  "start": {
                    "line": 513,
                    "column": 51
                  },
                  "end": {
                    "line": 513,
                    "column": 56
                  }
                },
                "name": "pairs"
              },
              "right": {
                "type": "MemberExpression",
                "start": 16453,
                "end": 16473,
                "loc": {
                  "start": {
                    "line": 513,
                    "column": 59
                  },
                  "end": {
                    "line": 513,
                    "column": 79
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 16453,
                  "end": 16461,
                  "loc": {
                    "start": {
                      "line": 513,
                      "column": 59
                    },
                    "end": {
                      "line": 513,
                      "column": 67
                    }
                  },
                  "name": "Defaults"
                },
                "property": {
                  "type": "Identifier",
                  "start": 16462,
                  "end": 16473,
                  "loc": {
                    "start": {
                      "line": 513,
                      "column": 68
                    },
                    "end": {
                      "line": 513,
                      "column": 79
                    }
                  },
                  "name": "renderOrder"
                },
                "computed": false
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 16475,
            "end": 16660,
            "loc": {
              "start": {
                "line": 513,
                "column": 81
              },
              "end": {
                "line": 521,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 16482,
                "end": 16639,
                "loc": {
                  "start": {
                    "line": 514,
                    "column": 4
                  },
                  "end": {
                    "line": 519,
                    "column": 7
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 16482,
                  "end": 16638,
                  "loc": {
                    "start": {
                      "line": 514,
                      "column": 4
                    },
                    "end": {
                      "line": 519,
                      "column": 6
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 16482,
                    "end": 16495,
                    "loc": {
                      "start": {
                        "line": 514,
                        "column": 4
                      },
                      "end": {
                        "line": 514,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 16482,
                      "end": 16486,
                      "loc": {
                        "start": {
                          "line": 514,
                          "column": 4
                        },
                        "end": {
                          "line": 514,
                          "column": 8
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 16487,
                      "end": 16495,
                      "loc": {
                        "start": {
                          "line": 514,
                          "column": 9
                        },
                        "end": {
                          "line": 514,
                          "column": 17
                        }
                      },
                      "name": "traverse"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 16496,
                      "end": 16637,
                      "loc": {
                        "start": {
                          "line": 514,
                          "column": 18
                        },
                        "end": {
                          "line": 519,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 16496,
                          "end": 16500,
                          "loc": {
                            "start": {
                              "line": 514,
                              "column": 18
                            },
                            "end": {
                              "line": 514,
                              "column": 22
                            }
                          },
                          "name": "item"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 16504,
                        "end": 16637,
                        "loc": {
                          "start": {
                            "line": 514,
                            "column": 26
                          },
                          "end": {
                            "line": 519,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 16515,
                            "end": 16544,
                            "loc": {
                              "start": {
                                "line": 515,
                                "column": 8
                              },
                              "end": {
                                "line": 515,
                                "column": 37
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 16519,
                                "end": 16543,
                                "loc": {
                                  "start": {
                                    "line": 515,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 515,
                                    "column": 36
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 16519,
                                  "end": 16524,
                                  "loc": {
                                    "start": {
                                      "line": 515,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 515,
                                      "column": 17
                                    }
                                  },
                                  "name": "value"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 16527,
                                  "end": 16543,
                                  "loc": {
                                    "start": {
                                      "line": 515,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 515,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 16527,
                                    "end": 16532,
                                    "loc": {
                                      "start": {
                                        "line": 515,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 515,
                                        "column": 25
                                      }
                                    },
                                    "name": "pairs"
                                  },
                                  "property": {
                                    "type": "MemberExpression",
                                    "start": 16533,
                                    "end": 16542,
                                    "loc": {
                                      "start": {
                                        "line": 515,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 515,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 16533,
                                      "end": 16537,
                                      "loc": {
                                        "start": {
                                          "line": 515,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 515,
                                          "column": 30
                                        }
                                      },
                                      "name": "item"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16538,
                                      "end": 16542,
                                      "loc": {
                                        "start": {
                                          "line": 515,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 515,
                                          "column": 35
                                        }
                                      },
                                      "name": "type"
                                    },
                                    "computed": false
                                  },
                                  "computed": true
                                }
                              }
                            ],
                            "kind": "let"
                          },
                          {
                            "type": "IfStatement",
                            "start": 16554,
                            "end": 16630,
                            "loc": {
                              "start": {
                                "line": 516,
                                "column": 8
                              },
                              "end": {
                                "line": 518,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 16558,
                              "end": 16577,
                              "loc": {
                                "start": {
                                  "line": 516,
                                  "column": 12
                                },
                                "end": {
                                  "line": 516,
                                  "column": 31
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 16558,
                                "end": 16563,
                                "loc": {
                                  "start": {
                                    "line": 516,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 516,
                                    "column": 17
                                  }
                                },
                                "name": "value"
                              },
                              "operator": "!==",
                              "right": {
                                "type": "Identifier",
                                "start": 16568,
                                "end": 16577,
                                "loc": {
                                  "start": {
                                    "line": 516,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 516,
                                    "column": 31
                                  }
                                },
                                "name": "undefined"
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 16579,
                              "end": 16630,
                              "loc": {
                                "start": {
                                  "line": 516,
                                  "column": 33
                                },
                                "end": {
                                  "line": 518,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 16594,
                                  "end": 16619,
                                  "loc": {
                                    "start": {
                                      "line": 517,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 517,
                                      "column": 37
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 16594,
                                    "end": 16618,
                                    "loc": {
                                      "start": {
                                        "line": 517,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 517,
                                        "column": 36
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 16594,
                                      "end": 16610,
                                      "loc": {
                                        "start": {
                                          "line": 517,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 517,
                                          "column": 28
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 16594,
                                        "end": 16598,
                                        "loc": {
                                          "start": {
                                            "line": 517,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 517,
                                            "column": 16
                                          }
                                        },
                                        "name": "item"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 16599,
                                        "end": 16610,
                                        "loc": {
                                          "start": {
                                            "line": 517,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 517,
                                            "column": 28
                                          }
                                        },
                                        "name": "renderOrder"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16613,
                                      "end": 16618,
                                      "loc": {
                                        "start": {
                                          "line": 517,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 517,
                                          "column": 36
                                        }
                                      },
                                      "name": "value"
                                    }
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 16645,
                "end": 16657,
                "loc": {
                  "start": {
                    "line": 520,
                    "column": 4
                  },
                  "end": {
                    "line": 520,
                    "column": 16
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 16652,
                  "end": 16656,
                  "loc": {
                    "start": {
                      "line": 520,
                      "column": 11
                    },
                    "end": {
                      "line": 520,
                      "column": 15
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 16664,
      "end": 16841,
      "loc": {
        "start": {
          "line": 523,
          "column": 0
        },
        "end": {
          "line": 527,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 16664,
        "end": 16841,
        "loc": {
          "start": {
            "line": 523,
            "column": 0
          },
          "end": {
            "line": 527,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 16664,
          "end": 16690,
          "loc": {
            "start": {
              "line": 523,
              "column": 0
            },
            "end": {
              "line": 523,
              "column": 26
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 16664,
            "end": 16678,
            "loc": {
              "start": {
                "line": 523,
                "column": 0
              },
              "end": {
                "line": 523,
                "column": 14
              }
            },
            "object": {
              "type": "Identifier",
              "start": 16664,
              "end": 16669,
              "loc": {
                "start": {
                  "line": 523,
                  "column": 0
                },
                "end": {
                  "line": 523,
                  "column": 5
                }
              },
              "name": "THREE"
            },
            "property": {
              "type": "Identifier",
              "start": 16670,
              "end": 16678,
              "loc": {
                "start": {
                  "line": 523,
                  "column": 6
                },
                "end": {
                  "line": 523,
                  "column": 14
                }
              },
              "name": "Object3D"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 16679,
            "end": 16690,
            "loc": {
              "start": {
                "line": 523,
                "column": 15
              },
              "end": {
                "line": 523,
                "column": 26
              }
            },
            "name": "RenderOrder"
          },
          "computed": false
        },
        "right": {
          "type": "ObjectExpression",
          "start": 16693,
          "end": 16841,
          "loc": {
            "start": {
              "line": 523,
              "column": 29
            },
            "end": {
              "line": 527,
              "column": 1
            }
          },
          "properties": [
            {
              "type": "Property",
              "start": 16700,
              "end": 16739,
              "loc": {
                "start": {
                  "line": 524,
                  "column": 4
                },
                "end": {
                  "line": 524,
                  "column": 43
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16700,
                "end": 16707,
                "loc": {
                  "start": {
                    "line": 524,
                    "column": 4
                  },
                  "end": {
                    "line": 524,
                    "column": 11
                  }
                },
                "name": "Default"
              },
              "value": {
                "type": "ObjectExpression",
                "start": 16709,
                "end": 16739,
                "loc": {
                  "start": {
                    "line": 524,
                    "column": 13
                  },
                  "end": {
                    "line": 524,
                    "column": 43
                  }
                },
                "properties": [
                  {
                    "type": "Property",
                    "start": 16711,
                    "end": 16718,
                    "loc": {
                      "start": {
                        "line": 524,
                        "column": 15
                      },
                      "end": {
                        "line": 524,
                        "column": 22
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 16711,
                      "end": 16715,
                      "loc": {
                        "start": {
                          "line": 524,
                          "column": 15
                        },
                        "end": {
                          "line": 524,
                          "column": 19
                        }
                      },
                      "name": "Mesh"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 16717,
                      "end": 16718,
                      "loc": {
                        "start": {
                          "line": 524,
                          "column": 21
                        },
                        "end": {
                          "line": 524,
                          "column": 22
                        }
                      },
                      "value": 0,
                      "rawValue": 0,
                      "raw": "0"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 16720,
                    "end": 16737,
                    "loc": {
                      "start": {
                        "line": 524,
                        "column": 24
                      },
                      "end": {
                        "line": 524,
                        "column": 41
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 16720,
                      "end": 16732,
                      "loc": {
                        "start": {
                          "line": 524,
                          "column": 24
                        },
                        "end": {
                          "line": 524,
                          "column": 36
                        }
                      },
                      "name": "LineSegments"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 16734,
                      "end": 16737,
                      "loc": {
                        "start": {
                          "line": 524,
                          "column": 38
                        },
                        "end": {
                          "line": 524,
                          "column": 41
                        }
                      },
                      "value": 100,
                      "rawValue": 100,
                      "raw": "100"
                    },
                    "kind": "init"
                  }
                ]
              },
              "kind": "init"
            },
            {
              "type": "Property",
              "start": 16746,
              "end": 16788,
              "loc": {
                "start": {
                  "line": 525,
                  "column": 4
                },
                "end": {
                  "line": 525,
                  "column": 46
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16746,
                "end": 16756,
                "loc": {
                  "start": {
                    "line": 525,
                    "column": 4
                  },
                  "end": {
                    "line": 525,
                    "column": 14
                  }
                },
                "name": "LinesFirst"
              },
              "value": {
                "type": "ObjectExpression",
                "start": 16758,
                "end": 16788,
                "loc": {
                  "start": {
                    "line": 525,
                    "column": 16
                  },
                  "end": {
                    "line": 525,
                    "column": 46
                  }
                },
                "properties": [
                  {
                    "type": "Property",
                    "start": 16760,
                    "end": 16767,
                    "loc": {
                      "start": {
                        "line": 525,
                        "column": 18
                      },
                      "end": {
                        "line": 525,
                        "column": 25
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 16760,
                      "end": 16764,
                      "loc": {
                        "start": {
                          "line": 525,
                          "column": 18
                        },
                        "end": {
                          "line": 525,
                          "column": 22
                        }
                      },
                      "name": "Mesh"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 16766,
                      "end": 16767,
                      "loc": {
                        "start": {
                          "line": 525,
                          "column": 24
                        },
                        "end": {
                          "line": 525,
                          "column": 25
                        }
                      },
                      "value": 0,
                      "rawValue": 0,
                      "raw": "0"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 16769,
                    "end": 16786,
                    "loc": {
                      "start": {
                        "line": 525,
                        "column": 27
                      },
                      "end": {
                        "line": 525,
                        "column": 44
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 16769,
                      "end": 16781,
                      "loc": {
                        "start": {
                          "line": 525,
                          "column": 27
                        },
                        "end": {
                          "line": 525,
                          "column": 39
                        }
                      },
                      "name": "LineSegments"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 16783,
                      "end": 16786,
                      "loc": {
                        "start": {
                          "line": 525,
                          "column": 41
                        },
                        "end": {
                          "line": 525,
                          "column": 44
                        }
                      },
                      "value": 100,
                      "rawValue": 100,
                      "raw": "100"
                    },
                    "kind": "init"
                  }
                ]
              },
              "kind": "init"
            },
            {
              "type": "Property",
              "start": 16795,
              "end": 16838,
              "loc": {
                "start": {
                  "line": 526,
                  "column": 4
                },
                "end": {
                  "line": 526,
                  "column": 47
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16795,
                "end": 16806,
                "loc": {
                  "start": {
                    "line": 526,
                    "column": 4
                  },
                  "end": {
                    "line": 526,
                    "column": 15
                  }
                },
                "name": "MeshesFirst"
              },
              "value": {
                "type": "ObjectExpression",
                "start": 16808,
                "end": 16838,
                "loc": {
                  "start": {
                    "line": 526,
                    "column": 17
                  },
                  "end": {
                    "line": 526,
                    "column": 47
                  }
                },
                "properties": [
                  {
                    "type": "Property",
                    "start": 16810,
                    "end": 16819,
                    "loc": {
                      "start": {
                        "line": 526,
                        "column": 19
                      },
                      "end": {
                        "line": 526,
                        "column": 28
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 16810,
                      "end": 16814,
                      "loc": {
                        "start": {
                          "line": 526,
                          "column": 19
                        },
                        "end": {
                          "line": 526,
                          "column": 23
                        }
                      },
                      "name": "Mesh"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 16816,
                      "end": 16819,
                      "loc": {
                        "start": {
                          "line": 526,
                          "column": 25
                        },
                        "end": {
                          "line": 526,
                          "column": 28
                        }
                      },
                      "value": 100,
                      "rawValue": 100,
                      "raw": "100"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 16821,
                    "end": 16836,
                    "loc": {
                      "start": {
                        "line": 526,
                        "column": 30
                      },
                      "end": {
                        "line": 526,
                        "column": 45
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 16821,
                      "end": 16833,
                      "loc": {
                        "start": {
                          "line": 526,
                          "column": 30
                        },
                        "end": {
                          "line": 526,
                          "column": 42
                        }
                      },
                      "name": "LineSegments"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 16835,
                      "end": 16836,
                      "loc": {
                        "start": {
                          "line": 526,
                          "column": 44
                        },
                        "end": {
                          "line": 526,
                          "column": 45
                        }
                      },
                      "value": 0,
                      "rawValue": 0,
                      "raw": "0"
                    },
                    "kind": "init"
                  }
                ]
              },
              "kind": "init"
            }
          ]
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 16845,
      "end": 17124,
      "loc": {
        "start": {
          "line": 529,
          "column": 0
        },
        "end": {
          "line": 537,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 16845,
        "end": 17124,
        "loc": {
          "start": {
            "line": 529,
            "column": 0
          },
          "end": {
            "line": 537,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 16845,
          "end": 16889,
          "loc": {
            "start": {
              "line": 529,
              "column": 0
            },
            "end": {
              "line": 529,
              "column": 44
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 16845,
            "end": 16869,
            "loc": {
              "start": {
                "line": 529,
                "column": 0
              },
              "end": {
                "line": 529,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 16845,
              "end": 16859,
              "loc": {
                "start": {
                  "line": 529,
                  "column": 0
                },
                "end": {
                  "line": 529,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 16845,
                "end": 16850,
                "loc": {
                  "start": {
                    "line": 529,
                    "column": 0
                  },
                  "end": {
                    "line": 529,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 16851,
                "end": 16859,
                "loc": {
                  "start": {
                    "line": 529,
                    "column": 6
                  },
                  "end": {
                    "line": 529,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 16860,
              "end": 16869,
              "loc": {
                "start": {
                  "line": 529,
                  "column": 15
                },
                "end": {
                  "line": 529,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 16870,
            "end": 16889,
            "loc": {
              "start": {
                "line": 529,
                "column": 25
              },
              "end": {
                "line": 529,
                "column": 44
              }
            },
            "name": "traverseConditional"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 16892,
          "end": 17124,
          "loc": {
            "start": {
              "line": 529,
              "column": 47
            },
            "end": {
              "line": 537,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 16870,
            "end": 16889,
            "loc": {
              "start": {
                "line": 529,
                "column": 25
              },
              "end": {
                "line": 529,
                "column": 44
              }
            },
            "name": "traverseConditional"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 16901,
              "end": 16909,
              "loc": {
                "start": {
                  "line": 529,
                  "column": 56
                },
                "end": {
                  "line": 529,
                  "column": 64
                }
              },
              "name": "callback"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 16911,
            "end": 17124,
            "loc": {
              "start": {
                "line": 529,
                "column": 66
              },
              "end": {
                "line": 537,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 16915,
                "end": 16943,
                "loc": {
                  "start": {
                    "line": 530,
                    "column": 1
                  },
                  "end": {
                    "line": 530,
                    "column": 29
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 16919,
                    "end": 16942,
                    "loc": {
                      "start": {
                        "line": 530,
                        "column": 5
                      },
                      "end": {
                        "line": 530,
                        "column": 28
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 16919,
                      "end": 16925,
                      "loc": {
                        "start": {
                          "line": 530,
                          "column": 5
                        },
                        "end": {
                          "line": 530,
                          "column": 11
                        }
                      },
                      "name": "result"
                    },
                    "init": {
                      "type": "CallExpression",
                      "start": 16928,
                      "end": 16942,
                      "loc": {
                        "start": {
                          "line": 530,
                          "column": 14
                        },
                        "end": {
                          "line": 530,
                          "column": 28
                        }
                      },
                      "callee": {
                        "type": "Identifier",
                        "start": 16928,
                        "end": 16936,
                        "loc": {
                          "start": {
                            "line": 530,
                            "column": 14
                          },
                          "end": {
                            "line": 530,
                            "column": 22
                          }
                        },
                        "name": "callback"
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 16937,
                          "end": 16941,
                          "loc": {
                            "start": {
                              "line": 530,
                              "column": 23
                            },
                            "end": {
                              "line": 530,
                              "column": 27
                            }
                          }
                        }
                      ]
                    }
                  }
                ],
                "kind": "let"
              },
              {
                "type": "IfStatement",
                "start": 16949,
                "end": 17121,
                "loc": {
                  "start": {
                    "line": 531,
                    "column": 4
                  },
                  "end": {
                    "line": 536,
                    "column": 5
                  }
                },
                "test": {
                  "type": "Identifier",
                  "start": 16953,
                  "end": 16959,
                  "loc": {
                    "start": {
                      "line": 531,
                      "column": 8
                    },
                    "end": {
                      "line": 531,
                      "column": 14
                    }
                  },
                  "name": "result"
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 16961,
                  "end": 17121,
                  "loc": {
                    "start": {
                      "line": 531,
                      "column": 16
                    },
                    "end": {
                      "line": 536,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 16969,
                      "end": 16998,
                      "loc": {
                        "start": {
                          "line": 532,
                          "column": 5
                        },
                        "end": {
                          "line": 532,
                          "column": 34
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 16973,
                          "end": 16997,
                          "loc": {
                            "start": {
                              "line": 532,
                              "column": 9
                            },
                            "end": {
                              "line": 532,
                              "column": 33
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 16973,
                            "end": 16981,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 9
                              },
                              "end": {
                                "line": 532,
                                "column": 17
                              }
                            },
                            "name": "children"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 16984,
                            "end": 16997,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 20
                              },
                              "end": {
                                "line": 532,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 16984,
                              "end": 16988,
                              "loc": {
                                "start": {
                                  "line": 532,
                                  "column": 20
                                },
                                "end": {
                                  "line": 532,
                                  "column": 24
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16989,
                              "end": 16997,
                              "loc": {
                                "start": {
                                  "line": 532,
                                  "column": 25
                                },
                                "end": {
                                  "line": 532,
                                  "column": 33
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ForStatement",
                      "start": 17005,
                      "end": 17114,
                      "loc": {
                        "start": {
                          "line": 533,
                          "column": 5
                        },
                        "end": {
                          "line": 535,
                          "column": 6
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 17010,
                        "end": 17040,
                        "loc": {
                          "start": {
                            "line": 533,
                            "column": 10
                          },
                          "end": {
                            "line": 533,
                            "column": 40
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 17014,
                            "end": 17019,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 14
                              },
                              "end": {
                                "line": 533,
                                "column": 19
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 17014,
                              "end": 17015,
                              "loc": {
                                "start": {
                                  "line": 533,
                                  "column": 14
                                },
                                "end": {
                                  "line": 533,
                                  "column": 15
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 17018,
                              "end": 17019,
                              "loc": {
                                "start": {
                                  "line": 533,
                                  "column": 18
                                },
                                "end": {
                                  "line": 533,
                                  "column": 19
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          },
                          {
                            "type": "VariableDeclarator",
                            "start": 17021,
                            "end": 17040,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 21
                              },
                              "end": {
                                "line": 533,
                                "column": 40
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 17021,
                              "end": 17022,
                              "loc": {
                                "start": {
                                  "line": 533,
                                  "column": 21
                                },
                                "end": {
                                  "line": 533,
                                  "column": 22
                                }
                              },
                              "name": "l"
                            },
                            "init": {
                              "type": "MemberExpression",
                              "start": 17025,
                              "end": 17040,
                              "loc": {
                                "start": {
                                  "line": 533,
                                  "column": 25
                                },
                                "end": {
                                  "line": 533,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 17025,
                                "end": 17033,
                                "loc": {
                                  "start": {
                                    "line": 533,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 533,
                                    "column": 33
                                  }
                                },
                                "name": "children"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17034,
                                "end": 17040,
                                "loc": {
                                  "start": {
                                    "line": 533,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 533,
                                    "column": 40
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            }
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 17042,
                        "end": 17047,
                        "loc": {
                          "start": {
                            "line": 533,
                            "column": 42
                          },
                          "end": {
                            "line": 533,
                            "column": 47
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 17042,
                          "end": 17043,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 42
                            },
                            "end": {
                              "line": 533,
                              "column": 43
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Identifier",
                          "start": 17046,
                          "end": 17047,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 46
                            },
                            "end": {
                              "line": 533,
                              "column": 47
                            }
                          },
                          "name": "l"
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 17049,
                        "end": 17053,
                        "loc": {
                          "start": {
                            "line": 533,
                            "column": 49
                          },
                          "end": {
                            "line": 533,
                            "column": 53
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 17049,
                          "end": 17050,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 49
                            },
                            "end": {
                              "line": 533,
                              "column": 50
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 17055,
                        "end": 17114,
                        "loc": {
                          "start": {
                            "line": 533,
                            "column": 55
                          },
                          "end": {
                            "line": 535,
                            "column": 6
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 17064,
                            "end": 17106,
                            "loc": {
                              "start": {
                                "line": 534,
                                "column": 6
                              },
                              "end": {
                                "line": 534,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 17064,
                              "end": 17105,
                              "loc": {
                                "start": {
                                  "line": 534,
                                  "column": 6
                                },
                                "end": {
                                  "line": 534,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 17064,
                                "end": 17095,
                                "loc": {
                                  "start": {
                                    "line": 534,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 534,
                                    "column": 37
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 17064,
                                  "end": 17075,
                                  "loc": {
                                    "start": {
                                      "line": 534,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 534,
                                      "column": 17
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 17064,
                                    "end": 17072,
                                    "loc": {
                                      "start": {
                                        "line": 534,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 534,
                                        "column": 14
                                      }
                                    },
                                    "name": "children"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17073,
                                    "end": 17074,
                                    "loc": {
                                      "start": {
                                        "line": 534,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 534,
                                        "column": 16
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17076,
                                  "end": 17095,
                                  "loc": {
                                    "start": {
                                      "line": 534,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 534,
                                      "column": 37
                                    }
                                  },
                                  "name": "traverseConditional"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 17096,
                                  "end": 17104,
                                  "loc": {
                                    "start": {
                                      "line": 534,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 534,
                                      "column": 46
                                    }
                                  },
                                  "name": "callback"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 17128,
      "end": 17490,
      "loc": {
        "start": {
          "line": 539,
          "column": 0
        },
        "end": {
          "line": 548,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 17128,
        "end": 17490,
        "loc": {
          "start": {
            "line": 539,
            "column": 0
          },
          "end": {
            "line": 548,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 17128,
          "end": 17170,
          "loc": {
            "start": {
              "line": 539,
              "column": 0
            },
            "end": {
              "line": 539,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 17128,
            "end": 17152,
            "loc": {
              "start": {
                "line": 539,
                "column": 0
              },
              "end": {
                "line": 539,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 17128,
              "end": 17142,
              "loc": {
                "start": {
                  "line": 539,
                  "column": 0
                },
                "end": {
                  "line": 539,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 17128,
                "end": 17133,
                "loc": {
                  "start": {
                    "line": 539,
                    "column": 0
                  },
                  "end": {
                    "line": 539,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 17134,
                "end": 17142,
                "loc": {
                  "start": {
                    "line": 539,
                    "column": 6
                  },
                  "end": {
                    "line": 539,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 17143,
              "end": 17152,
              "loc": {
                "start": {
                  "line": 539,
                  "column": 15
                },
                "end": {
                  "line": 539,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 17153,
            "end": 17170,
            "loc": {
              "start": {
                "line": 539,
                "column": 25
              },
              "end": {
                "line": 539,
                "column": 42
              }
            },
            "name": "traverseMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 17173,
          "end": 17490,
          "loc": {
            "start": {
              "line": 539,
              "column": 45
            },
            "end": {
              "line": 548,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 17153,
            "end": 17170,
            "loc": {
              "start": {
                "line": 539,
                "column": 25
              },
              "end": {
                "line": 539,
                "column": 42
              }
            },
            "name": "traverseMaterials"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 17182,
              "end": 17190,
              "loc": {
                "start": {
                  "line": 539,
                  "column": 54
                },
                "end": {
                  "line": 539,
                  "column": 62
                }
              },
              "name": "callback"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 17192,
            "end": 17490,
            "loc": {
              "start": {
                "line": 539,
                "column": 64
              },
              "end": {
                "line": 548,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 17199,
                "end": 17487,
                "loc": {
                  "start": {
                    "line": 540,
                    "column": 4
                  },
                  "end": {
                    "line": 547,
                    "column": 7
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 17199,
                  "end": 17486,
                  "loc": {
                    "start": {
                      "line": 540,
                      "column": 4
                    },
                    "end": {
                      "line": 547,
                      "column": 6
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 17199,
                    "end": 17212,
                    "loc": {
                      "start": {
                        "line": 540,
                        "column": 4
                      },
                      "end": {
                        "line": 540,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 17199,
                      "end": 17203,
                      "loc": {
                        "start": {
                          "line": 540,
                          "column": 4
                        },
                        "end": {
                          "line": 540,
                          "column": 8
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 17204,
                      "end": 17212,
                      "loc": {
                        "start": {
                          "line": 540,
                          "column": 9
                        },
                        "end": {
                          "line": 540,
                          "column": 17
                        }
                      },
                      "name": "traverse"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 17213,
                      "end": 17485,
                      "loc": {
                        "start": {
                          "line": 540,
                          "column": 18
                        },
                        "end": {
                          "line": 547,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 17213,
                          "end": 17217,
                          "loc": {
                            "start": {
                              "line": 540,
                              "column": 18
                            },
                            "end": {
                              "line": 540,
                              "column": 22
                            }
                          },
                          "name": "item"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 17221,
                        "end": 17485,
                        "loc": {
                          "start": {
                            "line": 540,
                            "column": 26
                          },
                          "end": {
                            "line": 547,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 17232,
                            "end": 17478,
                            "loc": {
                              "start": {
                                "line": 541,
                                "column": 8
                              },
                              "end": {
                                "line": 546,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 17236,
                              "end": 17249,
                              "loc": {
                                "start": {
                                  "line": 541,
                                  "column": 12
                                },
                                "end": {
                                  "line": 541,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 17236,
                                "end": 17240,
                                "loc": {
                                  "start": {
                                    "line": 541,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 541,
                                    "column": 16
                                  }
                                },
                                "name": "item"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17241,
                                "end": 17249,
                                "loc": {
                                  "start": {
                                    "line": 541,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 541,
                                    "column": 25
                                  }
                                },
                                "name": "material"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 17251,
                              "end": 17478,
                              "loc": {
                                "start": {
                                  "line": 541,
                                  "column": 27
                                },
                                "end": {
                                  "line": 546,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 17266,
                                  "end": 17467,
                                  "loc": {
                                    "start": {
                                      "line": 542,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 545,
                                      "column": 46
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 17270,
                                    "end": 17314,
                                    "loc": {
                                      "start": {
                                        "line": 542,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 542,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 17270,
                                      "end": 17283,
                                      "loc": {
                                        "start": {
                                          "line": 542,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 542,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 17270,
                                        "end": 17274,
                                        "loc": {
                                          "start": {
                                            "line": 542,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 542,
                                            "column": 20
                                          }
                                        },
                                        "name": "item"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 17275,
                                        "end": 17283,
                                        "loc": {
                                          "start": {
                                            "line": 542,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 542,
                                            "column": 29
                                          }
                                        },
                                        "name": "material"
                                      },
                                      "computed": false
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 17295,
                                      "end": 17314,
                                      "loc": {
                                        "start": {
                                          "line": 542,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 542,
                                          "column": 60
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 17295,
                                        "end": 17300,
                                        "loc": {
                                          "start": {
                                            "line": 542,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 542,
                                            "column": 46
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 17301,
                                        "end": 17314,
                                        "loc": {
                                          "start": {
                                            "line": 542,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 542,
                                            "column": 60
                                          }
                                        },
                                        "name": "MultiMaterial"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 17316,
                                    "end": 17414,
                                    "loc": {
                                      "start": {
                                        "line": 542,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 544,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 17335,
                                        "end": 17399,
                                        "loc": {
                                          "start": {
                                            "line": 543,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 543,
                                            "column": 80
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 17335,
                                          "end": 17398,
                                          "loc": {
                                            "start": {
                                              "line": 543,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 543,
                                              "column": 79
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 17335,
                                            "end": 17366,
                                            "loc": {
                                              "start": {
                                                "line": 543,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 543,
                                                "column": 47
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 17335,
                                              "end": 17358,
                                              "loc": {
                                                "start": {
                                                  "line": 543,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 543,
                                                  "column": 39
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 17335,
                                                "end": 17348,
                                                "loc": {
                                                  "start": {
                                                    "line": 543,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 543,
                                                    "column": 29
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 17335,
                                                  "end": 17339,
                                                  "loc": {
                                                    "start": {
                                                      "line": 543,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 543,
                                                      "column": 20
                                                    }
                                                  },
                                                  "name": "item"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 17340,
                                                  "end": 17348,
                                                  "loc": {
                                                    "start": {
                                                      "line": 543,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 543,
                                                      "column": 29
                                                    }
                                                  },
                                                  "name": "material"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 17349,
                                                "end": 17358,
                                                "loc": {
                                                  "start": {
                                                    "line": 543,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 543,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "materials"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 17359,
                                              "end": 17366,
                                              "loc": {
                                                "start": {
                                                  "line": 543,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 543,
                                                  "column": 47
                                                }
                                              },
                                              "name": "forEach"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "ArrowFunctionExpression",
                                              "start": 17367,
                                              "end": 17397,
                                              "loc": {
                                                "start": {
                                                  "line": 543,
                                                  "column": 48
                                                },
                                                "end": {
                                                  "line": 543,
                                                  "column": 78
                                                }
                                              },
                                              "id": null,
                                              "generator": false,
                                              "expression": true,
                                              "async": false,
                                              "params": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 17367,
                                                  "end": 17372,
                                                  "loc": {
                                                    "start": {
                                                      "line": 543,
                                                      "column": 48
                                                    },
                                                    "end": {
                                                      "line": 543,
                                                      "column": 53
                                                    }
                                                  },
                                                  "name": "multi"
                                                }
                                              ],
                                              "body": {
                                                "type": "CallExpression",
                                                "start": 17376,
                                                "end": 17397,
                                                "loc": {
                                                  "start": {
                                                    "line": 543,
                                                    "column": 57
                                                  },
                                                  "end": {
                                                    "line": 543,
                                                    "column": 78
                                                  }
                                                },
                                                "callee": {
                                                  "type": "Identifier",
                                                  "start": 17376,
                                                  "end": 17384,
                                                  "loc": {
                                                    "start": {
                                                      "line": 543,
                                                      "column": 57
                                                    },
                                                    "end": {
                                                      "line": 543,
                                                      "column": 65
                                                    }
                                                  },
                                                  "name": "callback"
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 17385,
                                                    "end": 17390,
                                                    "loc": {
                                                      "start": {
                                                        "line": 543,
                                                        "column": 66
                                                      },
                                                      "end": {
                                                        "line": 543,
                                                        "column": 71
                                                      }
                                                    },
                                                    "name": "multi"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 17392,
                                                    "end": 17396,
                                                    "loc": {
                                                      "start": {
                                                        "line": 543,
                                                        "column": 73
                                                      },
                                                      "end": {
                                                        "line": 543,
                                                        "column": 77
                                                      }
                                                    },
                                                    "name": "item"
                                                  }
                                                ]
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  "alternate": {
                                    "type": "ExpressionStatement",
                                    "start": 17437,
                                    "end": 17467,
                                    "loc": {
                                      "start": {
                                        "line": 545,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 545,
                                        "column": 46
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 17437,
                                      "end": 17466,
                                      "loc": {
                                        "start": {
                                          "line": 545,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 545,
                                          "column": 45
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 17437,
                                        "end": 17445,
                                        "loc": {
                                          "start": {
                                            "line": 545,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 545,
                                            "column": 24
                                          }
                                        },
                                        "name": "callback"
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 17446,
                                          "end": 17459,
                                          "loc": {
                                            "start": {
                                              "line": 545,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 545,
                                              "column": 38
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 17446,
                                            "end": 17450,
                                            "loc": {
                                              "start": {
                                                "line": 545,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 545,
                                                "column": 29
                                              }
                                            },
                                            "name": "item"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 17451,
                                            "end": 17459,
                                            "loc": {
                                              "start": {
                                                "line": 545,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 545,
                                                "column": 38
                                              }
                                            },
                                            "name": "material"
                                          },
                                          "computed": false
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 17461,
                                          "end": 17465,
                                          "loc": {
                                            "start": {
                                              "line": 545,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 545,
                                              "column": 44
                                            }
                                          },
                                          "name": "item"
                                        }
                                      ]
                                    }
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    }
  ]
}